December 13, 2022

How I became a frontend developer in one year

On the 8th of November 2020 I wrote my first “hello world” in the console. One year later, on the 15th of November 2021, I started my job as a junior frontend developer at factorial. Had you told me this at the beginning of 2020, I would have laughed it off. However, the pandemic changed a lot for many people — and I am no exception.

Image showing a flower pot with a plant growing out of it
Image showing a flower pot with a plant growing out of it

This article is about my first steps into the world of web development. If you are considering changing careers into the IT world, or have already decided to do so but don’t know where to start, I hope this helps. And if the above does not apply to you but you are nosy, I hope this is still entertaining for you, too. :)

I’ve structured my tale in five sections:

Why become a developer anyway?

Let’s briefly go back to the summer of 2020. I was without a job and, at this point, without the certainty that my job as an agile project manager was what I wanted to do long-term. With everything I took for granted being called into question, I decided to take a step back and think about what kind of work I really wanted to do. Both from a “making ends meet” perspective as well as a “what do I want to contribute to the world” perspective.

Of course my reasons are specific to me, as your reasons will be to you. But I still want to go over some of the considerations that lead me to my decision. My motivations were two-fold: I wanted job security and financial stability as well as doing work that challenged me and that I would enjoy. Let’s look at the practical considerations for choosing a career as a dev. They might seem unromantic, but I for one think romanticising work is not that helpful anyways.

I wanted financial stability and a job I could trust I wouldn’t lose again as easily as the one I had before. The demand for developers seems to be ever increasing and even if some companies struggled in the pandemic, the industry as a whole was doing fine. I believe it is likely that the industry won’t be too affected by other crises in the future (though of course we can’t know for sure). Before the pandemic, I never gave working from home much thought, but now working remotely was a must-have requirement. Not only to keep myself safe, but also others, during a virus outbreak. Being able to work remotely from anywhere became more attractive to me for other reasons as well. Even if I don’t have any plans to move right now, with my future becoming nebulous I wanted to make sure my job would not be a factor in holding me down in one place if my plans change. Luckily, at factorial we already have a globally distributed team and have had a lot of experience with remote work even before the pandemic. So if I decided to move I wouldn’t need to find a new job. Still, it is nice to know that I could find work almost anywhere, not just on a local job market. 

For me, working in tech means the perfect combination of stability (good pay, job security) and flexibility (working remotely, flexible working hours). These factors allow for adaptability to life changes, which brings me to my other set of considerations.

A career that I can see myself in for many years to come needs to provide more than a nice paycheck. And even if I don’t believe in romanticising work, I want to enjoy what I do and not dread getting up every morning (more than I will forever dread waking up on any given day). 

I wanted to do work that is meaningful and that would add value. Something that would challenge me and was at least adjacent to my ambitions in life. Talking about purpose (or as I like to call it, one’s work in the world) can get pretty personal and somewhat philosophical real fast. So while I won’t go into much detail about my convictions here, I want to provide some help if you are still in the process of figuring this stuff out. After all, this is a lifelong practice and a question that needs to be revisited as life changes. 

If you are unfamiliar with the Ikigai method, I recommend you read up on it. It’s a japanese model for finding your purpose and it basically asks you to answer the four questions: What are you passionate about? What are you good at? What does the world need? What can earn you money? Where the answers to these questions overlap is where your purpose lies.

I am paraphrasing here, definitely read up on the real thing, which will also guide you how to best do the exercise. You can go full-on spiritual with it if you like, but even if you are the most rational person out there, it is worthwhile to give this approach a go. 

If you are already set on becoming a developer, this method might not be groundbreaking, but thinking about what you like to do on a daily basis is still helpful. I love puzzles, finding order in chaos and am good at noticing small details, as well as seeing the bigger picture. Thinking about stuff like this can help broaden your perspective on what tasks you might enjoy. Doing the exercise also made me realise what a blessing it is to be able to choose a career based on what you enjoy in the first place. 

To sum it up in one short sentence, I wanted a job that was resilient and I wanted to do work that enriches my life and the lives of other people.

How to start

So now that I’ve gone on at length about why I decided to become a developer and hopefully gave you some food for thought, let’s talk about how I went about learning to code.

Image showing a portrait of our colleague Judith

Judith Plath

Junior Frontend Developer

judith@factorial.io
Image showing a flower pot

Dip a toe in

The idea of becoming a web dev had been marinating in my mind for a while now. In theory, it seemed like a perfect fit. But I had no idea how writing code actually looks and feels like. What if I hate it? I was never a big fan of anything to do with computers other than surfing the web. I needed a closer look but I was overwhelmed by the amount of information and I knew so little, I didn’t even know where to start. Luckily, I have friends who are devs, who could point me in the right direction. If you don’t, fear not, as you have me instead.

The first thing I did to get a feel for what the work would be like was watching videos on youtube. I would literally type “how to become a web developer” or “life as a developer” into the search bar and hop from video to video, finding people I liked the vibe of and watching them talk about all things dev.

I also did this Codecademy sorting quiz “What’s your programming personality?“ (mostly for fun), which turned out to be a great jumping-off point for thinking about what languages I wanted to learn. I knew pretty quickly that I wanted to work in the frontend, as I am a very visual person. If you are unsure, clicking through the quiz results might help, as well as watching videos explaining the difference between frontend, backend and fullstack. I found this short video to be very well-made and helpful, for example.

I wrote my first lines of code in the codecademy introduction to javascript course. I only did the parts that were free and enjoyed them. I’m sure the course is worth the money though.

Another free resource I used is grasshopper, a coding app that teaches you javascript with little games you can play on your phone or computer. I haven’t done many levels but I think it is a friendly and low-pressure option for your first contact with code, to get an idea of what the syntax looks like.

If you have the opportunity to talk to someone who works as a developer, ask them about their work. Maybe you don’t know anyone personally, but have a friend who works at a company with a development department? Ask them to connect you with one of the developers, invite them to lunch and ask any questions you may have. In my experience, most people in tech are happy to help. If you can’t think of someone you could ask in person, maybe watch even more youtube or just email me. :)

Going all in

After a few weeks of tinkering around with free tutorials, I got a recommendation for the web developer course from Colt Steele on Udemy. A friend of mine had started it and was impressed by its quality. As far as I know, there is always some kind of discount on udemy courses, I paid less than 20 euros for it back then. If you can afford to pay full price, I think it is worth the money. Colt puts a lot of effort into his course and keeps it up to date. You don’t need any previous knowledge, the lessons are well-structured and easy to follow. I think it is possible to become a self-taught dev with only online learning resources. In fact, I know it is possible, because I know people who have done that. 

While I was working my way through the udemy course, I was still applying for jobs as a project manager. One day, a friend sent me the link for a contest to win a coding bootcamp sponsorship for women. I applied and made it into the final round, but didn’t win the draw. Do you know the saying, if you don’t know what you want, toss a coin and while it is in the air you’ll know what side you hope for it to land on? While I was waiting to hear back from both a job interview and the fellowship competition I knew I wanted to become a dev, rather than a PM. 

I neither got the fellowship nor the job I was waiting to hear back from. But I decided I was going to become a dev — as soon as possible.

Image flower pot with a plant growing out

Bootcamp

As I knew I wanted to give this my best shot and didn’t have unlimited funds to keep learning at my own pace, I decided to do a coding bootcamp. When you start looking into bootcamps, depending on where you are, you’ll find that there are a lot of options. I can only speak from my experience here in Germany, but I hope a lot of it can be applied and adapted to most situations. 

The first thing to do is a good google search for all the bootcamps in your country or area. I found at least 15, so naturally I made a spreadsheet. I came up with eight criteria I wanted to compare. How you weigh them depends on your individual situation, but I think they all need to be considered. When you start looking through the websites, you’ll quickly learn that the bootcamps present themselves quite differently. So the first criterion was to do a preliminary “vibe check”. This might seem superficial or a bit extra, but I actually think it is the most important step. Whatever you choose, you’ll spend a lot of time with these people, and even if you don’t care about making friends, you don’t want to be miserable the whole time. Also, if the direction the company is going for doesn’t align with your goals, chances are this won’t be a good fit. For me, that meant ruling out the ones where every student and coach wore a button-up shirt and slacks and some of the women matching costumes in all the photos. I was also wary of the ones that gave off a strong “bro culture” vibe. If the website was all brushed metals, big fonts and there were hardly any women in the photos, I felt like they weren’t addressing me. Also, no note on inclusivity or a code of conduct? No, thank you.

In the end I was left with 11 potential bootcamps to put in my list.

The other seven criteria were:

  1. Location
    This didn’t end up mattering much. The bootcamp I did was not in my city and 100% remote. But I originally wanted a course to be in my city so that I could meet people in the same situation as me. Also, and this might be more relevant, a lot of camps have partnerships with local companies to facilitate hires right after graduation, so this is something to keep in mind.
     
  2. Is the bootcamp eligible for governmental help?
    This is specific to your individual situation and your country. In Germany, there is the possibility to get funding for a career change from the government. If you are eligible for anything like that, make sure to check which bootcamps are certified. 
     
  3. Cost
    The ones I looked at ranged from 6.000 € to 14.000 €, with most of them being around 8.000 €. This is a lot of money. If you plan to pay out of your own pocket, take a close look at their payment plans and loan options. I can’t say this definitely, but if you apply for government funding, you might have a better chance with a bootcamp that is less expensive. The one I did was around 8.000 euros and cost was not an issue for getting my funding.
     
  4. Duration
    Most courses are around three months, some shorter, some longer. I knew I didn’t want a shorter one, as I believed (and still do) that 12 weeks are the minimum to learn enough to enter the job market afterwards. I also didn’t want one that was 6 months or longer, as I was living off my savings during this time and my funds were limited. Again, consider what your situation calls for.
    Working hours is another point to think about, it didn’t matter to me as I was going to go full-time, but maybe part-time is what works for you. Only a couple I looked at offered evening classes, though.
     
  5. Next possible starting date
    There was one class I really liked the look of, but one cohort had just started and the next wouldn’t be for a couple of months. As I wanted to start as soon as possible, I opted for a different company.
     
  6. Curriculum
    This is a tricky one, especially if you don’t know a lot of the terms on those lists yet. But read through and compare them nonetheless. Some might be more front-end heavy while others offer more of a full stack approach. It depends on what you want and how well you know what you want.
     
  7. Bonus points
    Anything catching your eye? Are there female coaches? What do they offer in terms of career advice and help during the job application phase after the bootcamp ends? Heard anything good about one of them? If two or more options are still viable after all the other points are considered, which one “feels” the best?
     

If you’ve considered all these points, a winner should emerge and it is time to apply. Fingers crossed there is a spot for you, and if not, you already know what the next best option is. Depending on timelines it might be a good idea to apply to multiple bootcamps at once. I didn’t do that though.

Image showing flower pot with a four leaf plant growing out of it.

During the bootcamp

You are in, yay! 

As lame as it sounds, these programs are called bootcamps for a reason. The weeks are going to be intense. My best advice is to keep your head down and buckle through. It helped me to mark the weeks in a physical calendar and cross out each day. I also kept one eye on the syllabus to know what was coming up and what the focus of the day was. My social life was on the backburner, I was tired at the end of each day. But it is only a few weeks and knowing that helped me to stay focused. There might be peer pressure to do a lot of coding after hours and on the weekends as well. And it is alright, maybe even necessary, to do that. But remember to take breaks and rest, you need to give yourself time to absorb the information. Be prepared to dream of source code for a while. :)

Getting the job

And suddenly, one day will be your last day as a bootcamp student. I remember feeling like the hardest part was over and at the same time right in front of me. Because now it was time to apply for jobs. I have no experience on how to best prepare for coding challenges. That topic would be a whole other blog post. All I can offer, again, is a few considerations for finding the best workplace for you. 

Of course it’s a good idea to not be too picky and apply to any job that might be a good fit. But having an idea of what your preferences are is helpful, so you know what questions to ask during the interview. A few considerations could be:

  • Would you like to travel for work?
  • Is it important to you to have an office in your city to go to?
  • Do you want to climb the corporate ladder in a huge company or wear shorts to your start-up gig? 
  • Do you see yourself working on the same product for a long time or do you want to contribute to different projects? 
  • Which benefits are most important to you? Are you in it for the money (no shame in that) or are you also interested in offers like conference visits and team events?

I knew I wanted to work at a company that cared about community and knowledge exchange and that encouraged their employees to keep learning. That’s why I looked at sponsors of past events and meetups in my city. This is also how I learned about factorial and why I applied for a job there, even though they only had a senior level job posting for frontend. 

In general, I would say that most of the applications I sent were unsolicited. Don’t be deterred if a company you like does not have an open junior position stated on their website. I might even go so far as to say that if you apply despite there being no fitting job posting, it shows that you are honestly interested in the company and not just replying to any listing you’ll find. 

Something I have found incredibly valuable in my previous job was having a mentor. Especially as a beginner, it is super helpful to have someone by your side who you can talk to and who can offer guidance. So this was on my list of questions, especially if the company didn’t explicitly offer a junior position.

When I got the call from Seda that I got the job, I was so incredibly happy and excited. Two weeks later I had my first day. The first weeks and months are a blur to me now, I have learned so much and still feel like a total beginner most of the time. And that is the last piece of advice I can offer you: Embrace the beginners mindset. Accept that you are likely the person with the least amount of experience and knowledge in the room. Learning to code happens on the job, keep at it, ask questions and trust in yourself.

It’s been a year now, but it still feels like I am just at the beginning. I have learned and grown so much but it is nice to know that there is more to come, yet.

mage showing a full grown flower growing in a flower pot

tl,dr

Find out why you want to become a developer:

  • ask yourself how you want your work life to look like
  • the Ikigai method might help you 

Dip a toe in:

Go all in:

  • do a more structured course, the one I did and recommend is this web developer course from Colt Steele on Udemy
  • Find a bootcamp

Apply for jobs:

  • send unsolicited applications
  • ask about mentorship 
  • you got this!

 

Images created by @hundekoerper