What it takes to become a software developer. Do you, have it?
от Iliya OblakovПубликувано на 23 януари 2026 г.9 мин. четене3 прегледа

“Believe you can and you’re halfway there.” — Theodore Roosevelt
My Life changing journey
For quite some time, I have wanted to sit down and share my personal experience of how I became a software developer. I want to reflect on my journey so far and maybe provide some inspiration to someone who is on the same track right now, or is thinking of taking this leap of faith. Perhaps my experience can help someone who is stuck in the dilemma of whether this path is possible or worth it, or whatever other questions may pop into one’s head.
Turning a Dream into Reality
My goal is to showcase the few not-so-easy steps that I took to turn a dream into reality. As the saying goes, “be careful what you wish for.” The road was thorny and full of sweat and tears, but consistency pays off. Many times, I was feeling that I am not doing enough progress, but instead punishing myself too hard, I was keep going every single line matter, just make sure you understand it, that the concept is clear and then go on. Some concepts are harder to grasp then others, but it wouldn’t be such art if it was too easy right?
From Admiration to Aspiration
For as long as I can remember, I have admired people who are doing this job and have daydreamed about one day sitting here and writing code to change the world. However, it hasn’t happened exactly as planned, and right now, I am stuck in an “infinity learning loop”. So, changing the world can wait for now! Anyway, challenge accepted, but first things first.
How everything happened
When I first moved to the UK from Bulgaria, I worked in many different jobs like most of my fellow countrymen. However, I was lucky to have a childhood friend who had already made it into the tech industry and provided me with example and motivation. He had an exciting journey breaking into tech, but I’ll save the details for another time if he’s okay with me sharing it.
The Journey
The journey wasn’t easy, and I encountered many challenges along the way. I began by teaching myself the basics of coding online, watching YouTube tutorials and taking free courses, which I’d be happy to provide if anyone is interested. Like many others, I started with Codecademy just to see if coding was for me, and to be honest, it was love at first sight. Perhaps it was so because of the language I started with, it made it feel so natural and easy to understand. It was around 2015–2016 when I was first introduced to Ruby, and writing code in this particular language felt like writing simple English that produced results.
Struggles and Progress
Writing code was looking like magic to me at first, you feed it with words and it gives you some action, “What sorcery is this?” I wandered in amazement.
Indeed, coding can often feel like a form of sorcery, especially to those who are new to it. The ability to write lines of code and witness the resulting actions and behaviours of a computer program can be both fascinating and mysterious. However, once you dive deeper into coding, you’ll discover that it’s not magic but rather a logical and systematic process.
At its core, coding is about giving instructions to a computer. Just like a recipe guides you to create a delicious sausage roll, or chicken soup or … what is your favourite dish? Code instructs a computer on what actions to perform. The computer executes these instructions precisely, step by step, leading to the desired (or undesired) outcome.
The language used in coding provides a structured and specific way to communicate with the computer. Each programming language has its own syntax and rules that must be followed for the code to be understood and executed correctly. Similar to learning a foreign language, as you become familiar with the syntax and logic of a programming language, you gain the ability to express your ideas and intentions in code. I often found myself sitting outside, watching the cars go by and wondering how I could represent that in code. Considering things like how fast they were going, which way they were headed, and where they were going, I wanted to create something meaningful using code. The cars were just one example — I connected everything with programming. Maybe it’s the excitement of being a beginner. I’m sure anyone starting with programming can understand and relate to this!
The deeper I delved into programming, the more I fell in love with it. The more code I produced, the more I realized that it was a world of infinite possibilities. Along the way, I made mistakes, learned from them, and improved my skills. I discovered that coding is not just about creating functional software, but also about creativity, problem-solving, and expressing oneself through code. It’s a constantly evolving field with endless opportunities to learn, experiment, and innovate.
As I progressed in my coding journey, I worked on small projects such as creating simple websites and web apps. I even participated in community challenges like #100DaysOfCode on Twitter, where I shared my progress with fellow Twitter friends. It was exciting and fulfilling, and I felt great about my achievements. However, in one moment, I suddenly felt overwhelmed and stopped.
I greatly admire those who land jobs in the tech industry through self-teaching, creating impressive portfolios of projects as a side hustle. I believed I could be one of those success stories, but then I just stopped. Balancing work, personal life, and family responsibilities with consistent coding practice became incredibly challenging for me, and I found it difficult to maintain consistency. I had no structure in my studies, started a course, then left it, started another interesting one, finished it, and then went back to the previous one with the feeling that now is the time to push it, and so on and so forth.
I think that the most important part of learning is structure. You need a well-designed plan on how, when, and what you will be learning. Looking back, I can’t stress enough how important it is to have a structured plan and not fall into rabbit holes. Trust me, you will be tempted very often.
YouTube tutorial hell
Udemy courses whirlpool
freeCodeCamp
CS50…
You name it, there are many more, but those are just some of the places where you can lose yourself if you don’t put a structure in place. Unfortunately, I learned that the hard way. It may sound like an excuse, but unless you’ve experienced it yourself, it’s hard to fully understand. I saw many examples of successful self-taught developers and felt guilty that I couldn’t achieve the same level of consistency. I started to self-pity and blame my laziness and inconsistency, and eventually, I just stopped thinking about it altogether.
It’s been about a year since I last coded, and I’ve been missing it greatly. Despite having a full-time job during that time, I often find myself daydreaming about being a developer again. I frequently talk with my supportive and loving wife about how amazing it would be to be a digital nomad, which is a dream for many tech enthusiasts like me. The idea of being able to travel and work from beautiful places like a villa by the beach or a cozy cottage in the mountains is incredibly appealing idea.
The come back
After a long break, my restless spirit has ignited that spark and turned it into a burning desire to take on the challenge of becoming a digital nomad. I must emphasize that I couldn’t have done it without the unwavering support of my wife, who has always kept me motivated, especially during the moments when I felt like giving up. Her encouragement has been instrumental in helping me put myself together and pursue my passion for coding once again.
Whit that said, it is time for plan B — codding bootcamp!
I know, I know many will say — lame, you could do it without it, it is not worth it, and so on but let me stop you there. That was something that worked for me! It is expensive for an average working person — yes, it is time consuming and intensive — yes, there are almost no guaranties that you will find a job after yes and yes and yes but was it worth it?? — YES.
This was exactly what I needed to bring structure to my studies. Everyone there was a consummate professional in their respective fields. I attended the on-campus bootcamp from Monday to Friday for 8 hours a day. It was a full-time program that aimed to train me to become a full-stack web developer with a focus on Ruby — my childhood love!
During the bootcamp — programming has become more than just a skill for me. It’s a passion, a form of expression, and a way of thinking. It has transformed from a mysterious and intimidating concept into a familiar and fascinating world that I eagerly explore and immerse myself in. It has opened up endless opportunities and unlocked my creativity, and I continue to be amazed by the power of code to shape the world around us.
This adventure continued for 9 weeks. We created 2 real applications which were still live some months ago, before they made Heroku paid. At the end of the 9 weeks, we had a career week where people helped us prepare our LinkedIn profiles, CVs, and cover letters to be job hunting ready. They held many hiring events with partners of the bootcamp. Basically, they were trying to make us capable of finding a job as soon as possible after finishing the bootcamp. Some people succeeded very quickly, some found a job during the bootcamp, others straight after, I found a job 3 months after finishing it. But this is a topic for another article. If you’re interested and want me to tell you how I landed my first job, please let me know.
Conclusion
In summary, for anyone embarking on this path, I have three words of advice: Consistency, patience, and dedication. This is not rocket science, this is not quantum physics, this is pure logic, if you can think logically (this can be learned and trained) than you are good to go. Don’t procrastinate, start now and thank me latter. It is not going to be overnight success, it will take time, so be prepared. Remember, it takes only 30 minutes a day for 59 days to form a habit. Keep this in mind and persevere, for the key lies in your unwavering commitment.