August 4, 2023 — 14 min read
How Olha Went From Zero Coding Knowledge to a Fulltime Job in 9 Months
Olha is a self-taught developer specializing in frontend technologies like React and Angular. She transitioned from working as a sales manager to a fulltime developer in 9 months.
Hey, I'm Olha! I'm a self-taught front-end developer specializing in React and Angular. I used to work at Ubisoft, a gaming studio, and now I'm an Angular developer at a company that provides SAP solutions.
My journey into tech was a bit unconventional. After a couple of years trying different fields, I worked as a sales manager in IT companies but didn't find it fulfilling. I explored marketing but still felt something was missing. Then, I took a chance on a one-month course on HTML, CSS, and JS. But I had to put learning on hold for a while, two years later, I decided to dive back into programming and had to start from scratch again.
It took me about 9 months of self-studying to become a programmer. Out of those 9 months, 3 were spent on actively searching for my first job in the field. It was a challenging but rewarding journey.
My learning path was a mix of practicing coding challenges and building projects with the help of YouTube and online resources. It was a fun and practical way to understand programming concepts and gain experience.
I didn't rely on motivation. Instead, I focused on building a daily routine that allowed me to learn as much as possible. Initially, I could only study at night after work, which was challenging, and my progress was slow. Realizing that dedicating just one or two hours a day would extend the time needed to master programming skills, I made a bold decision.
I quit my job and committed myself to a minimum of eight hours of learning every day. I didn't need motivation; I simply followed my routine, working hard consistently, even on weekends and holidays. By establishing this disciplined approach, I was able to stay on track and make steady progress.
It happened when I applied to a new company and had to learn Angular from scratch. This was a major challenge for me as I had limited time to prepare and needed to prove to the company that I could handle the project. Although I was already familiar with React, Angular was a completely different and more complex world.
However, going through the process of learning Angular taught me a valuable lesson. I realized the truth behind the phrase, "Once you learn one programming language, it's easy to learn another." Same for the frameworks and libraries. This experience not only enhanced my skills in Angular but also reinforced my ability to adapt and learn new technologies fast.
How did you handle gaps in your knowledge or understanding, given you didn't have a traditional teacher or professor to consult?
It was quite challenging. As a newbie, it felt overwhelming to determine what was essential to learn and prioritize.
Whenever I encountered something I didn't understand, I would Google it or look for explanations and examples on platforms like Stack Overflow or YouTube.
Also constant practice played a crucial role in filling gaps in my knowledge. I made it a habit to engage in continuous practice and hands-on coding. I remember spending hours working on my own web applications and experimenting with different project ideas.
Overall, combining constant practice with online resources and a hands-on approach was instrumental in helping me overcome the challenges of being a self-taught developer without a traditional teacher. It allowed me to continuously grow as a programmer and gain my confidence in tech.
I followed a structured approach. Initially, I dedicated three months to job hunting, during which I combined my time with continuous learning. Here's how I prepared:
Daily routine: I started my day by searching and applying for new job positions that matched my experience and skills.
Building a portfolio: Concurrently, I worked on developing my portfolio, showcasing projects that highlighted my skills and expertise on my CV.
Learning from each interview: After every interview, I made a point to jot down the questions I was asked. This helped me identify areas where I needed further improvement and allowed me to focus my learning efforts accordingly.
One noteworthy experience was when I fell ill before a technical interview at Ubisoft and couldn't prepare adequately. Surprisingly, the interview turned out to be relatively easy because many of the questions overlapped with those I had encountered in previous interviews.
So, based on my journey, I would suggest that if you want to work for a specific company, consider attending interviews with other companies beforehand. This will provide valuable practice, allow you to identify areas for improvement, and increase your confidence when facing your desired company's interview process.
Well, I don't jump on every new tech bandwagon that comes along. While the idea may be interesting and the new tech could potentially improve processes, it can also be risky for a company to implement the latest technology and then struggle to find developers who know it.
Luckily, I'm currently working with a team that doesn't rely on outdated technologies. We prioritize using proven and reliable tech that has a strong developer community behind it. This way, we can keep our skills up to date and aligned with industry standards.
Believe it or not, I still experience imposter syndrome from time to time, even now. Sometimes, I question my abilities and wonder if I'm truly skilled in Angular for instence. When those thoughts arise, I try to handle them by adopting a few strategies.
Firstly, I remind myself that progress takes time. I understand that comparing myself to where I was six months or a year ago is a better measure of my growth and capabilities. Looking at the bigger picture helps me realize that I'm not a bad Angular developer. In fact, I've come a long way in a short period, having learned the framework from scratch and being able to write code for complex logic solutions.
Overall, imposter syndrome is something that many people experience, and it's important to remember that it doesn't define our abilities. It's all about embracing the journey, celebrating our achievements, and reminding ourselves of the progress we've made along the way.
I wish I could doubt less about myself. When I first started learning programming on my own, I had this belief that coding was only for super smart people who excelled in high-level math and stuff like that. I didn't think it was possible for someone like me to become a programmer, let alone work in big companies or live abroad. It felt like an impossible dream to achieve in such a short period of time. But looking back now, I realize that everything is possible with hard work and persistence.
That's why I decided to create my blog on Instagram to inspire others, especially women, and let them know that they can do it too. I don't consider myself special or lucky, and I didn't have any connections to help me build my career. I want to show people a real-life example that anything is achievable. You can become a programmer, find a job within a year, and even build your career in big companies. It's all possible.I want to show them that they can achieve their dreams, just like I did.
If I could go back in time, I would tell myself to be more confident from the start. And now, I want to pass on that confidence to others through my journey and experiences shared on my blog.
Here are some tips for staying focused and productive: Stick to a daily routine for studying. Try to dedicate as much time as possible each day to studying, even if it's challenging.
Focus on practical exercises rather than just theory. Don't overload yourself with too many topics at once. Take it one at a time.
Plan your study program in advance, but keep it realistic and manageable.
Set some goals, like finding a job or to have an interview, within a reasonable timeframe.
Take breaks. Get some sleep...seriously try it. Give your body a rest and try not to use social media. If I’m not posting much on Instagram, now you know what I’m doing…yep, I’m taking a nap 😂.
Surround yourself with a productive environment, like study groups or communities.
Seek guidance and support from mentors or online communities or friends.
Break down your goals into smaller tasks to make them more manageable.
How important do you think having a mentor is for a self-taught developer and how can one find a mentor in this field?
Having a mentor as a self-taught developer is really helpful. But it's important to choose carefully. Some bootcamps are more interested in saving money than providing good mentors. Look for smaller bootcamps or courses run by real programmers with valuable experience who can explain complex things simply. A good mentor should not only teach you programming skills but also help you improve your soft skills and prepare for job interviews. They should be able to guide you through the process of finding a job in the industry.
When looking for a mentor, you can start by exploring YouTube channels of experienced developers. Aaron Jack, for example, is a great example of someone who went from being an English teacher to a developer at Uber. He runs an online Bootcamp that not only teaches programming but also offers guidance on finding a job. Another channel to consider is Dev Ed, which offers interesting tutorials and insights into web development. I personally was studying through his content.
Make sure the mentor you choose is passionate about their work, offers some guarantee or refund policy, and has a decent amount of experience. Checking their work history, especially if they have experience in bigger companies, can give you valuable insights into what to expect.
What advice would you give to someone who is considering teaching themselves coding but isn't sure where to start?
Starting to learn coding on your own can be tough. I remember when I began, it was overwhelming because of so many free resources available. I couldn't afford paid courses or personal mentorship, so I googled everything. But with too many options, it became challenging to prioritize and focus. I ended up burning out because I tried to cover everything, and my study plan was unrealistic. I even gave up on becoming a programmer for two years.
My advice: if you don’t know where to start, you can check out a few programming courses and create your study plan based on their tuition.
Also, focus more on the programming language itself rather than, for example, if you learn web development, non-essential elements like HTML and CSS. Those are easy to google and not often asked in interviews. Understanding the core logic of programming languages will build your hard skills and make you a real programmer.
To help others avoid the frustrations I faced, I decided to create a web-programming guide. It provides a structured plan with free, up-to-date resources and personal advice. It covers everything from learning programming to finding a job. You can check out my guide on my Instagram for structured guidance on your coding journey.
Well, honestly this can be challenging for me. I sometimes feel like programming becomes my entire life. I notice other programmers posting on social media every day, and I wonder how they manage to have so much free time.
I realize that I need to learn from others who have mastered work-life balance. It's essential to create a routine that allows for both productive coding time and time for other activities, including social media.
My personal advice, make an effort to work for companies, especially in the beginning. It can have long-term benefits. For instance, when I had to leave Ubisoft due to political circumstances in my country, my team and executives provided massive support and positive feedback on LinkedIn. Staying in touch with former colleagues and building good connections can be valuable for the future. When I was looking for a new job later, I felt confident asking them for personal feedback on the company where I had interviews.
In conclusion, finding work-life balance is crucial, but it's also worth making an effort and performing well in your job. Building strong connections with colleagues can be beneficial in the long run and contribute to a healthy work-life balance.
What's the next step for you in your career, and what skills are you currently learning to help you get there?
Currently, I'm already working in a big company, and my plan is to further advance my career here. I find it incredibly exciting to be part of a skilled and proficient team, and I'm eager to continue contributing to complex solutions for the B2B sector.
In addition, I have a strong desire to explore opportunities to work in other countries. The idea of experiencing different cultures and work environments while continuing to grow as a web developer excites me.
I also have a dream of creating my own IT product in the future. With my programming skills and previous experience in sales and marketing, I believe it can help me to create and launch my own IT project.
Lastly, looking back at your journey, what's one piece of advice you wish someone had given you when you were starting out?
WelI, looking back, I wish someone had given me when I was starting out: "Don't give up easily." I regret giving up the first time because I could have become a programmer much earlier. That's why I always emphasize to anyone who is starting their journey: The hard work and effort are worth the results.
Huge thanks to Olha for making the time to share her experience. Be sure to follow him on his socials. If you enjoyed this article then you'll surely enjoy the newsletter. If you haven't already, consider dropping your email so you don't miss out on the latest news and job opportunities in the programming world.
Thanks for reading! Subscribe below to receive new articles, tech news and job opportunities directly to your inbox!