11 Things I’ve Learnt about Becoming a Software Engineer; After a Coding Bootcamp…

Alex Kelly
Jul 19, 2019 · 10 min read

I’ve been a Software Engineer at Gousto (a recipe box delivery company based in London) for six months now, so it felt like a good time to look back and reflect on what I have learnt on my coding journey so far.

Image for post
Image for post
The Gousto Tech team (I am kneeling in the middle)

As a quick intro into how I got to Gousto: In early summer 2018, after working in roles from Account Management, Project Management, Marketing and Sales, I realised I needed a change in my career. I felt like I had stopped learning anything new and that a whole part of my skill set, analytical thinking, wasn’t being utilised — and it didn’t feel great.

After what I would like to think was a not-quite-mid-life-crisis, I realised that my passion for tinkering with code and wanting to improve customer experiences hinted that becoming a Software Engineer could be my calling. I enrolled in the Le Wagon coding bootcamp in London and spent nine weeks learning what it could be like to be a web developer. And I loved it!

So without further ado: I like lists, everyone likes lists — here are my 11 things I wish I had known when I started…

Image for post
Image for post
Starting my coding life — Le Wagon Coding Bootcamp Batch 173 (I’m in the blue top second from left)

1. Believe in yourself

I came out of the bootcamp feeling I had learnt a lot, but still thinking … “could this possibly be enough for someone to employ me?”. It’s all well and good finding a skill you love but you also kinda need to work and earn some money — and finding a job as someone with no actual work experience in a field is not that easy.

This is why I will be ever thankful to Matt Young (one of our Software Engineering managers) and the Gousto team for taking a chance and giving me the opportunity to join as a Junior Front-End Software Engineer. I was their bootcamp Guinea Pig (I kid you not, in my first interview here I asked to be one! Squeak squeak).

Believing that I could do the role and putting myself out there for interviews was the first step in beginning my new career.

A Guniea Pig (courtesy of my Guinea loving friend Mark H)

There are still times when the dreaded imposter syndrome pops up — but looking back at where I was a year ago, I can’t believe how far I have come, and that was all down to working hard and having the support of a great team. Which leads me into…

2. You know so much more than you realise

It turned out that once I started at Gousto I knew far more than I realised and within two weeks I was working on my own tickets and putting my own code in production. It felt amazing.

I also soon found out I could challenge the ‘how’ of what we were doing; and that was because I was fresh out of learning and was close to the basics. Reading a lot of articles, especially around the fundamentals, doing online courses, playing around on code-pen — my new set of eyes allowed me to see things in a different way (and hopefully meant the team learnt a thing or two from me as well).

Image for post
Image for post
Look at that amazing countdown timer — my first code in production 😍

3. It is OK to ask for help — a lot (and always take notes)

I feel so fortunate as everyone at Gousto has never hesitated to help and support me, but at first I didn’t want to come across as such a newbie, so I would just listen and watch. This is just a recipe for disaster as you can’t make sense of things if you don’t know the ins-and-outs of why things are done the way they are. When I started asking questions and challenging, my learning started to sky rocket.

I also take copious notes on everything. When you are learning so much it is easy to forget or get things muddled up. Now I can always go back to my notes for a refresher (so I don’t annoy people by asking the exact same questions); and share them with the wider team who keep asking me to share them or write up official documentation on things!

Image for post
Image for post
Just the start of my 47 page google doc called ‘Gousto Processes’

I am a big fan of screen shot-ing code or taking photos of notes from meetings and adding them to google docs, or just copying lines of code and annotating these. It’s pretty simple and old skool — but it works for me. My advice to any newbie is to find what works for you. I now look back at some of the first things I wrote which are second nature now, but for the next bootcamper that starts at Gousto, this could be a great starting point for them to learn from.

We also do a lot of pair-programming and whiteboarding at Gousto which is the perfect environment to learn by asking questions.

4. Google is your best friend

The one thing I have noticed more than anything is that even the most experienced engineers are googling all the time — and that is such a relief. Syntax changes, new problems arise and things break — no one is expected to know exactly what to do all the time, and anyone who tells you otherwise is telling porkies.

My work set up is three screens which are permanently set to 1. Visual Studio Code (or the terminal, but VS Code is the best IDE IMO as the terminal is built in — and it is free), 2. LocalHost in the browser and 3. Google — slack floats around in the background too — we have a #freefood channel where we get to try all the upcoming Gousto recipes and I don’t want to miss out on that.

Image for post
Image for post
My work set up (after extensive tidying pre-photo)

5. Don’t only apply for jobs in the language you learned

Coding languages have lots of similarities. I learnt to code in Ruby on Rails. Then I applied for the job at Gousto in JavaScript with React and Redux , which I had no experience in at all — and then freaked out that I wouldn’t have a clue what to do. It turns out you can transfer so much of your knowledge from one language to another and pick a new one up relatively quickly. I have now even done some coding in Python and it pretty much makes sense (but don’t ask me to explain it just yet!)

Image for post

6. Coding isn’t just coding

When I was learning how to code I had no idea what a job in coding (software engineering, web development, tech — call it what you will) actually involved — and my mind has been blown. A large proportion of my time isn’t spent in front of a computer writing lines of codes — but involved in sprint planning, workshops on how to implement new features, helping make changes to our platform set-up up on AWS, “css-fun-time” sessions, demos and much more.

For someone who comes from a working background full of meetings and context changing this has been a godsend, as it means I get to ease into coding life by being involved in lots of projects and understand the big picture — which I love. However, I am now starting to cut down on these meetings so I can spend a good chunk of my day coding — and have joined in with ‘Gousto Makers Time’ where we are encouraged to block out our diaries from 2pm to the end of the day, each day, so meetings don’t interrupt us in the afternoons.

7. Non “coding” skills are super valuable

Coming from a non-tech background my previous experience hasn’t gone to waste. In fact, it was one of the main reasons I was hired at Gousto. Having strong business acumen, knowing how to work in a team and manage people, leading client meetings, presenting in front of hundreds of people and being active in company social life were all skills and experiences I could draw on to get up-to-speed quickly.

This has paid off; and in my six months here I have been involved in setting up the Tech-Team Social Committee, starting #pubclub, helping to run our twitter channel @GoustoTech, running the working group to improve onboarding into the tech team (blog post on this coming soon..) and supporting on meetups in the office. I can be vocal in meetings, have strong opinions and liaise across the business to help us drive our work forward.

Image for post
Image for post
Making gifs and riding bikes for GoustoTech

8. You don’t have to code in all your spare time

I started off thinking the only way I could get better at my job was dedicating as much of my spare time to coding as possible. This soon became overwhelming and I was tiring myself out during the week. Now that I use my time at work to ask questions, pair with different people, attend code-dojos, lunchtime talks and work on Tech-10% projects (at Gousto we get every other Friday to work on projects we choose with the only caveat being they can benefit Gousto in some way), I am learning far more because I am not tired all the time and can absorb the relevant info from far more experienced people.

I still have a side project I work on and read articles, do exercises and play around trying new things — but that’s only when I have the time and am feeling refreshed. I make sure to have a good social life first and foremost with coding being something I do to relax rather than a chore.

Image for post
Image for post
My team — The Radishes — not coding in our spare time (all our squads are named after fruit or veg)

9. Learn what you need to know; and what you don’t need to know

This is one of the biggest learning curves for me post bootcamp where I was spoon fed a curriculum. Where do you even start when choosing what to learn next? It is easy to get swamped and bogged down in all the resources out there and flit between different topics, learning styles and formats — I did this to the point where I was actually putting off learning as it was overwhelming.

The skill I have found most valuable is working out what I definitely need to learn and what I can just look up (refer back to point 4). What helped me most is sitting down with my manager and a couple of colleagues and mapping out the different big areas, and then subsections, that would help me get better at my current role. Now I have clear learning plan of where I need to up-skill and can keep track of how I think I am doing. Using this plan I now ask colleagues for the best resources that they have used and found most helpful. This has made everything feel more manageable and I don’t get that feeling like I need to learn everything right now.

I also have set time in my diary for learning during the working day (usually 30mins) that my manager and I choose topics for. I then report back on what I have learnt in our 1–2–1’s, which keeps me on my toes and means learning is still a big focus of my job.

10. You really need to know git and github — and collaborate well

On my bootcamp we used github a bit but I didn’t take the time to really understand how it works — it turns out the more you understand it the easier your coding life will be. The stereotype of coders being geeky introverts who always wear their headphones and communicate only through slack is actually only partly true — the reality is we pair more often than not, do thorough code reviews and ask for feedback — so having a good knowledge of git and github and how to do proper commits is invaluable (I am slowly getting there still though!) Pro-tip: when you start as a professional coder never, ever again, git push origin master.

I would highly recommend reading up on how to be a git-pro — I also recommend this Codecademy course for beginners and then this Pluralsight course once you feel comfortable.

Image for post
Image for post
A good old git meme — we don’t have bells in the Gousto office though, thankfully!

11. Working for a company with a product you believe in is so important

Gousto absolutely rocks! I believed this before I started working here — a cool product people are super passionate about (including me), an amazing sustainability pledge and values I share. So it was a no brainer to apply here — and from the first interview I knew it was full of people I wanted to work with. Being in a new job is hard enough, let alone a new career — so not having to worry about whether I would make friends, whether the work was interesting and did I have great benefits made all the difference.

It can be tempting when starting out in a new career to take the first job you get offered (and I totally get that for a lot of people you don’t have a choice — you need a job, and now!!) — but if you have the luxury of being a bit more choosy then finding a company that is right for you will pay back in more ways than you can imagine.

Image for post
Image for post
Excuse the OTT jumpsuit — it’s our Hawaiian themed summer party today 🏖️

If you are thinking about embarking on a coding career, have already signed up to a coding bootcamp or have just graduated — I wish you all the luck and hope my 11 points have helped in some way.

Gousto Engineering & Data Science

Gousto Engineering Blog

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store