Here's an interview with Maria, who changed career from marketing to become a Software Engineer. Read on for her tips for learning to code and changing career into tech!
Hey, so can you introduce yourself?
My name is Maria, I am currently a Software Developer at a proprietary trading company in London. If you had told me even 2 years ago that I’ll be working as a developer I’d think you were joking! My university degree was completely unrelated to tech - it was in Contemporary Chinese Studies.
After graduating I moved to London to work in digital marketing.
After the initial learning curve of my marketing job, the role got pretty monotonous with a lot of repetitive tasks. Moreover, my higher up coworkers seemed to be doing the same kind of job as me. That got me wondering if I really wanted to spend the next years of my life working in marketing.
Soon enough I was doing online and in-person courses and was going to coding meet-ups in London. I decided I wanted to switch careers to software development. Coding bootcamps were too expensive for me so I quit my job and moved back home with my parents. I studied full-time for 6 months using Udemy courses and other online resources. I focused on the front end as I saw it as the easiest area to get into as someone without a CS degree. In December 2019 I accepted an offer for my current job.
What does a typical day as an entry level developer look like for you?
I work in a very small team (it’s just me and one other developer) so meetings and catch-ups are not as structured as it would be in a bigger company. Usually I would log in at 9 am and chat a little to my coworker, letting each other know where we are with what we were working on yesterday and what we’ll be doing today.
Then it’s pretty much down to coding for the rest of the day, except for the impromptu meetings if I need help debugging a feature. I am usually working with React and Node.js and would sometimes use Python as well. A lot of time is spent reading on how different technologies work, and reading the documentation for the APIs we work with to find the appropriate solution to what we’re working on.
How did you learn coding?
In terms of in-person learning I attended an 8 week course organised by Code First: Girls and Bank Of America which covered using Python for the back-end. Code First Girls is an amazing organization which offers a variety of courses in front-end and back-end web-development and databases.
How did you get your entry level software engineer job?
To prepare for applying I built a couple of side projects which used React and a simple Node.js server, and hosted them on Heroku. I rewrote my CV so that right at the top would be a description of my projects and what I used to build them. As well as linking back to the GitHub repositories that have my projects.
This is the first page of the CV I used to apply:
Then I sent out as many applications as I could! To me it was a numbers game. I was hearing back from one company for every 10-12 applications I was making so I just kept at it. It was a long process because I was also sending a cover letter with every application but it paid off. I got to final interviews with 3 companies and got one offer.
What advice do you have for someone without a CS degree who wants to get an entry level software engineer job?
Don’t get discouraged! It takes time, a lot of time. Applying to jobs is in itself a full time job so set realistic expectations and be kind to yourself. It’s a good idea to practice problem-solving exercises, you can find those on CodeWars, HackerRank and LeetCode.
I would suggest starting with the ones on CodeWars and once you advance to level 5-6 start the ones on the other websites if you want. Also, it’s absolutely ok to look at the solutions for these exercises, especially if it’s the first time you encounter that type of problem. These kind of problems tend to repeat themselves and it’s good to recognize the patterns.
Look at every interview as a learning opportunity. Even if you fail you'll learn a bit more about how the interviewing process is like and whether you have any gaps in your knowledge. This knowledge can make you more confident and better equipped for your next interview. Also, if you need a day of rest it is more than ok to take it!
Have you ever had imposter syndrome?
I still have it. I think especially for those coming from a non-traditional background there is always a little voice asking “am I good enough for this industry?”. Even though you know the answer is “yes” it can be hard sometimes to believe it.
I feel imposter syndrome especially when I start looking over new concepts or technologies. What helps me deal with it is remembering that feeling this way is because I am pushing myself out of my comfort zone and learning, and remembering all the times I felt this way and pushed though.
It’s easy to get caught in the moment especially when you’re struggling with a new technology. That is why it’s really important to take a step back and think where you started form and how far you’ve come. You just have to believe that you’ll figure this out like you did the past things that caused imposter syndrome.
What are your career goals for the future?
I got very lucky that in my current role I got to work both on the front-end and the back-end. I realized I am enjoying working on functionality and the back-end much more. So I am looking to expand my knowledge of the back-end and computer science principles.
Because of this I am looking to move into a back-end role at a bigger company. While preparing for interviews I came up with the idea of a blog series to explain the exercises I was going through on HackerRank and LeetCode. I started posting those blogs on my Dev Community account.
I am also looking to get more involved in the London tech community. I became a coach for CodeBar’s remote workshops and got accepted for Code First Girls’ fellowship. So come October I will teach one of their courses.
I know there is so much more to learn and get involved in and I am very excited for it!