So, almost six years after I first picked up a programming book, I finally worked my first week as a professional web developer.
There are probably those of you that think six years is a long time between picking up programming and starting a career in the field and with the glut of snake oil salesmen on the internet promising to teach you programming in 3 months, it's easy to see why. However, In my case, I never really intended to become a professional programmer, but the more I did it, the more I wanted to spend more time doing it. Eventually (and with a little serendipity in my personal circumstances), it made sense to pursue a career in the field.
Backstory aside, I spent the first five years of my programming journey exploring many different languages and technologies at a surface level without ever deep diving into anything in particular. Like many others, I also did 3 to 5 in tutorial hell before I was unexpectedly made redundant from my corporate job in 2020.
With a big redundancy payout in hand and a shiny new Macbook, I decided to see if I could make the transition from corporate middle manager (I know) to web developer and in a little under a year, I managed to land a pretty cool job working in the video games industry.
So, without further rambling, here are the five takeaways from my first week as a professional web developer writing code for actual, real money!
1. You probably know more than you think
If you anything like me, the first day, your feelings of impostor syndrome will be off the charts. I was so nervous that I would be handed the keys to the codebase and would look in awe at the jumbled mess of characters on the page and not understand a thing. In reality (luckily) that was not the case and I found I could read and understand a lot of the code I looked at during the week even though there were corners of the codebase that seemed like black magic to my inexperienced eyes, which brings me onto the second point.
2. Get comfortable with saying "I don't know"
"I don't know". Say it with me "I don't know".
In your first week you are going to be hit with so much information that nobody expects you to slot in and know what you are doing right away. Also, the tech industry is huge and the array of competing tools on offer is so broad that you will never learn everything so if you don't understand something, you don't need to apologise, just say you don't know and try to follow up with questions (or write it down and research later). Please, for the love of god, don't try to blag your way through things that you don't know, we all know it will end badly.
3. Don't be afraid to ask for help.
Your team want you to do well and will be more than happy to help you get up to speed quickly as it will make both yours and their lives easier. Just make sure that you try to solve a problem on your own before reaching out for help. If you hit a brick wall, having an experienced team member point you in the right direction can get you back on track.
4. Take breaks
The first couple of days, I found myself working straight through from 9-5 and felt totally drained at the end of the day. While it is important to work hard and take in lots of new information quickly, it is more important to not burn yourself out.
Just getting out of the chair for a couple of minutes each hour and taking an adequate lunch break will likely improve your productivity and allow you to absorb information much more readily.
5. Don't focus too much on the actual code
The codebase is important, there is no doubt about it but you have spent lots of time learning your chosen language and framework and are probably quite comfortable with these things. What you may not have spent much time learning is some of the ancillary technologies that you are going to be using. For instance, get comfortable with Git, be able to SSH into a server, be able to set up deployment to your dev server from your IDE etc. Learning these things, even at a surface level will help your first week run more smoothly than if you were going in from a cold start.
Bonus Tip! Focus your knowledge
I can't say how important this last tip is. Focus your chosen toolset. (For me, this was Laravel, Vue, Tailwind and Postgres). Follow a few tutorials, do a Udemy course, watch some youtube videos but as soon as you know the basics, start building. Build small applications at first and use documentation when you are stuck. Learning to read, understand and problem solve from documentation is a core skill that every programmer needs and there won't be any tutorials to help in your specific use case in the real world.
Final thoughts
Your first week will most likely be a whirlwind or emotions from the ecstacy of completing your first ticket, to moments of questioning whether you are good enough but the main thing is just to persevere and try to learn. If a company has put their faith in you and believe you have what it takes, then believe in yourself.
If you are reading this and are yet to land that first job, please don't give up. The road to get here has been hard and there have been times when I have considered giving up but the payoff at the end of the road is worth the agony. You can do this!
If you have any questions, feel free to reach out to me.
Top comments (2)
Congratulations!
Beware of thinking you should be expert in every sub-area around programming.
Accept the fact that you there will always be areas where you are uncomfortable. Areas that are not (and maybe never will be) your core strength. Some programmers are git experts, some are regEx gurus and some will improve the ci/cd pipeline while compiling the code. It's so easy to compare yourself with the gurus of their expert sub-domain and the imposter syndrome can hit you really hard.
Thanks for the advice!
You are so right. It is easy to think that every professional programmer knows everything about everything. In reality, it couldn't be further from the truth. I am already starting see which areas I (and other team members) excel in and areas where I need to sharpen my skills. More importantly though, working in a professional environment has opened my eyes to the wide range of things that I didn't even know existed before (example: crontabs) which may be future areas of interest.