2 years later, after my 3-month interview, I finally shed one less favourable nickname and got given a new one by 2022’s fresh batch of 32 graduates, Grad Dad (although I'm betting they call me Grad Step-dad when I’ve finished leaving 20 comments on their pull requests). A new adventure began for all of us. I had the opportunity to lead and they had the opportunity to start their first job. We were all essentially 2 sets of people in different places in our careers but we shared the fact that this is new and we are all figuring it out together.
When thinking of writing this blog, I thought of writing about how my experience was in starting out as a grad and now sitting on the other side of the table, but honestly, there was a better story to tell… A story of 32 graduates who started their first job with all that university had taught them and 3 months later they look like they have been working for years.
But before we start, in typical fashion, let's go through my glossary:
- GDD: Google Driven Development; the motto, the philosophy, the core of every developer.
- #BeBetter: The real motto.
- PR: Pull Request; a proposal to submit code to the shared codebase; A.K.A. a road laid to waste with thousands of comments and suggestions for the greater good of the project.
The New Dawn
2022 is buzzing with hope, adventure, and opportunities. 32 fresh-faced graduates walked into the office for this new opportunity. With anything this big and new, there comes a desire to excel, a desire to rewrite your history. It’s your first job and one of the biggest moments of a person's life — honestly, a poor start can affect your upcoming years and a good start can set you up for new levels.
So with all these new hopes, the grad program started and we were in for a fun ride.
So the philosophy was the way in which we were going to bridge the gap between school and being ready for the industry. How we were going to push them to be capable devs. How we were going to teach them standards, responsibility, problem-solving, and what it means to be in a team.
This philosophy was focused on not stealing any learning opportunities from anyone. Letting them rough it out, figure it out themselves by Googling it (long live GDD!), and collaborating with their fellow graduates to solve problems. In other words, we as the leadership don’t code anything, but guide them, make suggestions for improvements, help them after they have tried but failed, and share our knowledge and experience with them.
I remember when I was a grad we had a junior also developing on the project with us and there were benefits to it in that we got to see their standards, their thought process, and other great benefits. Now the question came in: “did we, as the graduates, lose learning opportunities when the junior implemented features for us on the project?” For example, if the junior sets up the server or does some big feature like a file upload, we miss out on understanding the feature in-depth, we miss out on learning how to Google for something new, and we miss out on learning how to persevere when you have been Googling for a whole night and you still haven’t found the solution.
With this different approach, by letting the graduates rough it out for themselves without someone with some experience coding on the project with them, they get to take out more from the program. They build the confidence that they can solve any bug and build any feature. They build the endurance to keep on trying until they have found a solution. They build stronger relationships with their team members by sharing the knowledge they have gained from the experience. In my opinion, you learn more and remember more from trying to figure out problems by yourself and your own failures.
The Work Begins
The thing that struck me the most was how much I had forgotten what it was like to be a grad, what it was like to be in a completely new environment, and what it was like to start all over again. I noticed things like their first PR was a big accomplishment. Making a PR that went through without comments or suggested improvements mattered. Standing up in front of everyone to demo was a big thing.
The first month was about learning the process and technical aspects. It was about gaining confidence in your work. It was about making mistakes and learning from them. It was about growing your wings.
Now The Work Really Begins
The best part for me was watching them grow and become things you may not have seen when they first started. They took feedback and turned it into their next action. They took technologies they never heard of and they became the ones schooling people.
In terms of feedback, they took it gracefully. You would ask them to try branching out to more backend tasks and they would submit a backend PR the same day. You ask them to comment more on PRs and they not only start commenting but they leave really insightful comments. You would ask them to try taking tougher and bigger tasks and they start implementing a massive calendar component that everyone feared and they finish it in 2 days. You ask them to be more vocal and they would volunteer to do the demo the next day. Seeing that attitude to take feedback and use it to #BeBetter was magical.
When it came time for them to do a cron job (something they didn’t even know existed) they did it and that cron job is running as smoothly as a baby’s bottom. When it came time for them to work on an abstraction layer they slapped it around like it was a pancake. JWT, OAuth, S3, Load Balancers, you name it. They took the challenge and figured it out.
I remember at one point for a whole week a couple of them were fighting with a bug, they made a bit of progress each day, but it was a complex piece of work. Promises, asynchronous functions, and I think a file upload was even in the mix. What I loved about it was their perseverance; they never gave up. Every other day they kept on telling me they want to try another approach, even with all the frustration of Googling and Googling and the tiredness of staring at the same piece of code wondering, “What’s wrong with it? It should work.” They never gave up and it was beautiful watching them keep on trying until they solved the problem.
That’s what it means to be a developer, to solve problems. Whether you have to wade into page 3 on Google, whether you have to watch long YouTube videos, whether you rough it out for a week, you solve problems.
The day I realised that the philosophy was working was on the day before a demo. I would just jump on one of the voice channels they were on to check on them and they didn’t ask me for help. They would have a bug and one of the other graduates would be the one to help solve the problem. They didn’t need me anymore. They were independent. They had the confidence to try and solve the problem themselves. When they talked to each other it was like hearing people who have been in the game for a long time talking. They spread their wings and they learned how to fly.
The Final Demo
Finally, it was D-day! Three months of hard work and determination. Three months of learning and unlearning. Three months of doing things you didn’t even know were possible. The past three months came down to this day, this moment, this demo.
The projector was set up, the laptop was plugged in, throats were cleared and all eyes were set on the screen. The demo started and our work was the centre of attention. It felt like watching your team play in a final. Every progress bar loading had the suspense of waiting to watch the next episode of a thriller TV show. Every page on display’s styling had to be perfect.
As the demo carried on, the graduates were posed questions and they answered every single one spot on and with confidence in their trade. This was when I knew the philosophy worked. They left the nest that day and they weren’t grads anymore.
Over time your definition of things change. When I was starting out, I thought of work experience as the number of years you’ve been working, but now I think experience is what happened in those years. One year of failures and successes means more to me than two years of success. One year of seeing multiple perspectives and approaches to solving problems means more to me than two years of only seeing one perspective. One year of being on a rollercoaster means more to me than two years of sitting in the back seat of a car.
These graduates came straight from the womb of University and they solved a problem in three months.
They solved a problem: