/
2022 Reflections

2022 Reflections

To the future leads of Jobsboard

I’ll begin by saying this year was especially trying. From trying to revive our outdated packages to appeasing companies, the work done this year was no easy feat. However, we did get it done and because of that, we hope that we have made it considerably easier for you to take over the reins.

At the start of my term, I only really had 1 goal in mind – to revamp the website while adding in some new features. With that regard, I think that I have done my part. As a bonus, I have tried to patch up some new things that were broken with much pain and suffering. But hey, everything works now (maybe).

With that being said, I shall leave below a list of things that helped me go from knowing literally nothing at all to managing a fairly complex project.

Recruitment

Probably the most challenging aspect of Jobsboard.

  • Follow your gut about a candidate. If you don’t think that they are a good fit, move on. Trust me, there’ll be plenty of other people who are willing to work on the project.

  • The hardest part about recruitment is trying to find good frontend people. All because we use Vue , which I still maintain my stance on it being a good learning opportunity. To help with this, I have created the https://github.com/csesoc/vue-frontend-assessment which should help you a lot in filtering out legitimate applicants from the novices. You will eventually be in charge of maintaining this repository so feel free to add features like automation for marking an applicant and other things that you can think of.

  • Think about the type of team culture you would like to develop (e.g. super cracked vs chill team or somewhere in between?)

  • Vibe check is important as well as being technically capable! Ultimately, you will be working with your team for the year, so take on people you actually like and can see yourself working well together

  • Make sure they are committed. We have had 3 people drop out this year because they couldn’t commit properly to the project

  • If you have a person in charge of the interview who, like James, tries to see the good in everyone and constantly hypes them up and asks you if you want to take them, don’t give in if you aren’t sure xP

Careers

The stressful aspect of Jobsboard.

Most of the problems with Jobsboard this year has been resolved. Thankfully. However,

  • It’s a good idea to consult with the Careers directors about any features that directly impacts companies and their user experience on the platform. They are the ones in charge on dealing with companies directly and should be able to give a better opinion. But if the feature is for something simple, probably best to use your own discretion.

  • In the event that you are unable to resolve a problem that a company is having within a maximum of 1 week, try asking Careers if they are able to post the job on the company’s behalf on another platform like discord, etc.

  • Be transparent and constantly give updates to Careers about your progress when fixing a bug or something similar. It doesn’t feel good for them to keep wondering when you will finish something.

Team Dynamic

Now onto the more chill stuff.

  • Encourage constant communication amongst your team. When the team is happy and close, productivity goes

  • Keep frontend and backend as one team. I found that this system worked best, because it (1) allowed for members to learn both sides of the codebase and (2) ensured transparency when features required both frontend and backend counterparts (e.g. password reset, company logo uploads).

  • Try to organise face-to-face meetings and regular hangouts. I have failed at both of these sadly

  • Honestly, try to mimic what Notangles had this year with their team. They are really the gold standard on what a team dynamic should be (as much as this pains me to admit).

The Frontend Debate

There was a huge discussion about rewriting the project in React this year.

  • First off, please don’t. At least not yet. Once you have access to the #leads channel, you are able to read the conversation I had with Adam about this. He has some really solid points about now moving.

  • If you want to rewrite the project just cause React is “easier” to use, then you’re really looking about it the wrong way. A project like this should be taken as a good learning opportunity to learn more about a language and why it works so that you know why a language is preferred over another. Don’t get on the Vue hate train until you actually use and understand it.

  • If you do decide to rewrite the project anyways, I would appreciate being given a heads up about this just so that I can wish you luck xD.

Admin Things

This is probably your main responsibility as a director.

  • I want you to realise it’s not that bad and that Darian was probably being a little overdramatic

  • Plan your vision and goals for the project early on so that you have a clear idea about how you want things to move forward.

  • Do better sprint plannings than I did this year. Maybe watch that workshop video Peter made about the secrets of sprint planning.

  • Give everyone a chance to work on the things that they are interested in. You should think about how to plan tickets at least a week before a meeting.

  • If you run out of ideas… this is unlikely, ask the team about any ideas that they might have for the project. You might get some useful feedback and suggestions.

  • Keep up to date with documentation. I tried doing my best at that this year with organising events, meetings and Q&A stuff in Confluence.

  • Be passionate about the project if nothing else. You are literally handling a project that will probably impact more than 10,000+ CSE students.

  • Be reachable. Have good reply game. For the love of god, please have a good reply game. Messenger sucks (imo. Can’t change my mind about this xP) but if your team prefers this, then do what’s best for the team. Just go with the flow as along as you are reachable.

  • Be transparent with your execs. If you can’t deliver something on time, just say so and adjust your timeline accordingly.

  • Don’t overcommit to 10000+ things like I did. TRUST ME, if you want your uni life to be chill, just don’t–

    • Side note, if you do ever feel burnt out/want to take a break from Jobsboard, please communicate before taking a break ~~~ don’t just go afk (doomed case study: Jobsboard T1 2022)

    • As harsh as this sounds, nothing really matters in a critical sense. There will always be people to support you if you took a three month break (hypothetically). Whether that means recruiting new team members or achieving less (which is perfectly fine), things will always work out eventually

Possible features to implement next year

  • Replace zid authentication with federated authentication (SSO) and make repo public once done

  • Refine code quality in the backend codebase. There’s still quite a lot of code smells e.g. using any to type check variables, repetitive logic …. the list goes on, which creates technical debt (not epic )

  • Job recommendation system ==> could possibly integrate with circles once federated auth is out

    • A cool idea proposed by James. What if we could recommend jobs to students based on what courses they have already taken. For example, a student who has only taken COMP1511 wouldn’t really be ready for a Software Engineering job interview, however a student who has completed both COMP2521 and COMP3121 would be ready. Another example would be a student who is majored in Artificial Intelligence should be recommended a Machine Learning job.

    • Frontend - A “Recommended Jobs” section in the jobs list page and a form for students to fill out/update what courses they have completed

    • Backend - Record students answer and store them in the database. Then, based on the response, design an algorithm (similar to matching problem from COMP3121) to provide job recommendations.

  • Articles Page (Accessible to everyone) - A page where students are able to find articles related to jobs such as “How to Write a Great Resume”, “Interview Tips from Previous Interns and Grads” and more.

  • Statistics page (Accessible to admins and companies)

    • Frontend - A page where companies are able to see our stats about the number of companies registered with us, the number of job posts that we released the past year and more

    • Backend - most of the backend routes should be completed from this year (e.g. get the number of companies with jobsboard, number of jobs posted this year)

  • Dark mode integration

Miscellaneous Things

  • Please write thorough documentation

  • Give credit where credit is due

  • Don’t be afraid to ask for help

  • Take lots of pictures

Jobsboard in the grand scheme of CSESoc Development

Your main priority is to maintain the image that Jobsboard was and still is – a cool project that people will want to work on.

  • I know it’s hard if you’re an introvert, but try your best to be social with the rest of Dev (feels weird calling it this and not Projects). Attend social events and get to know as many people as you can (be genuine about this please). Uni is all about having fun and growing as a person

  • Maintain good relationships with everyone (that’s your minimum requirement)

  • Find opportunities to shill Jobsboard xD

  • The current CSESoc Projects means a lot to me. Especially Jobsboard uwu . I don’t think I would have had half the fun and experience in uni if it hadn’t been for the people in Projects who made it memorable.

Last but not least….

GOOD LUCK
PLEASE TAKE GOOD CARE OF MY BABY . DON’T LET IT DIE!!!