Hi everyone! I’m Nico.
I don’t usually share my story of the journey I went on to become a software developer. But recently I have seen a string of posts on Reddit, Twitter, and other social platforms where I see a lot of very talented people struggling at different stages of their journey.
I have been very successful as a software developer. But it wasn’t always easy. It has been a lot of blood, sweat, and tears and I went through my share of challenges as well so I wanted to share my story in the hopes that it would inspire people to keep going stronger and become successful.
Early Life
I grew up in an upper-middle-class family. Whatever toy or gadget I wanted my parents got it for me. I remember spending time in my dad’s office for countless hours just playing with my toys while he conducted business meetings, and negotiated heavy machinery & metal purchases.
My introduction to computers was when my parents bought me a computer just so I could play Wolfenstein 3D, a game that had just come out. I was 7 years old at the time. I guess it wasn’t the most age-appropriate present but I enjoyed the hell out of that game. In fact, it is one of my all-time favorite games to this day.
I also got interested in programming through Wolfenstein. I wanted to find out how to make the game myself! Safe to say that never went anywhere as life had something else in store for me.
Teenage Years
When I was around 13 years old, my parents lost everything they had built over the years. At one point during these years, we were all living in a small single room where we shared the kitchen and toilet with other families in similar financial situations.
I remember having to choose between walking to school and eating lunch or taking public transport and skipping lunch.
These years were hard but also served to help me grow up real quick.
My family recovered somewhat financially and managed to send me to college. I majored in Economics as I wanted to work in a safe-ish industry such as finance.
Being Homeless
By the time I finished college, through a series of unfortunate circumstances I ended up without a roof over my head. A very kind family agreed to temporarily house me in their spare room. I’d gone through hunger before but this situation was extremely difficult and scary to deal with.
I got busy looking for jobs right away and luckily found a job at a local bank. The salary was abysmal and didn’t pay enough for me to be able to rent a place in the area I was in. I realized real quick I needed to find a better job.
Flight Attendant
I saw that an airline in my area was hiring flight attendants with the offer to train to obtain all pertinent certifications and licenses. They also provided housing with a decent paycheck. I had no interest in becoming a flight attendant but I was definitely interested in having a permanent roof over my head and making a decent living so I applied.
The selection process was fairly involved. They had three rounds of interviews. The first one was a group interview. On the day of the interview, there were a hundred other candidates who were taking part in the process with me. The airline was only looking to select five candidates that day to move on to the next process.
I remember I was sick and running a pretty high fever but I went through the interview process. In the end, I was one of the five lucky ones they selected.
I went through the other two rounds as well and was finally hired.
I was relieved, to say the least. I moved into my new apartment and started flying around the world.
Rediscovering Software
Being a flight attendant was very taxing but also a blessing.
The airline I worked for had a lot of long-haul flights. This meant that each trip could last many days but also meant that there were long stretches of “off days” after each trip. These off days provided me with a lot of time to reevaluate my life and get my priorities straight.
I liked the traveling part of the job and also the flexible hours so I wanted to find something else that would give me the opportunity to do both without having to serve chicken or beef.
Eventually, I found out that through software after gaining some experience I could work remotely if I wanted to and earn a very decent living as well. This sounded like a sweet deal to me!
I stayed at the airline for a couple of more years to save up enough to live off of before embarking on my journey to become a software engineer.
Becoming A Developer
I had saved up enough to focus completely on learning to become a software developer.
I started with the foundations of computer science. I learned about how processors work, how memory works, and how operating systems manage resources. This provided me with a very solid foundation to be able to build on and made learning programming languages a breeze.
I chose to learn Java and C# & .Net as those were the languages most in-demand in the local market.
I used a lot of my savings to pay toward my education as I found that, even though there were an infinite number of free resources at my disposal, I learned a lot better with guidance and mentorship.
Volunteering at Mozilla Foundation
After studying programming for a bit I figured it would be a good idea to build up my experience by contributing to some open-source projects. But I didn’t just want to check in code in random projects. My goal was to do this in a place that provided mentorship.
I was introduced to The Mozilla Foundation by one of my mentors. Mozilla at the time used to have their mentorship program that was exactly what I was looking for.
I spent three months contributing there. I got to take part in weekly meetings and eventually I was asked to mentor new volunteers as well. This was an awesome experience and if they still run this program I would highly recommend it to anyone.
First Project
After I had studied enough and gained enough confidence in my abilities, I went out looking for projects. At this time I was looking for anything as the money was running out.
Fairly quickly, through contacts I had developed from the training programs, I was able to land my first project.
It would have been a simple enough project for someone with experience but took me a week to finish. I made $100 dollars! I was over the moon when I saw that transfer land in my bank account.
There is something very special about the first project you successfully deliver. I have done very large deals since then but I remember the details about the first project more than anything else I’ve worked on since then.
Starting My Company
Through the same contacts, I was able to continue to get more and more projects until finally I was put in touch with a client of a large construction company who wanted to overhaul their software systems and combine them all into a single central system.
This was a huge project and exactly what I needed to start my own software company and hire my first developers.
And for the last 10 years, I have continued to work on some very large projects for other clients in the construction industry, financial institutions, and government bodies. It has been quite a journey, to say the least!
Internal Training & Mentorship
I am very grateful to everyone who made it possible for me to get out of some very difficult situations. I am glad they were there to keep me going and not allow me the luxury of giving up. It is because of that reason that very early on when I was able to hire other developers I made it a point to provide them with a support system that would not only enable them to deliver good products but also help them grow.
With a client of mine, we developed an internal training program that we use still to this day with our new hires who have little to no experience. This training program is built around teaching them good software practices but more importantly, the focus is around building their confidence to help them grow in all areas of their lives.
In addition to internal training, I offer mentorship and coaching programs to students who are in university and interested in software and those who may be looking to change careers to software development. Recently I also got involved in The Proof Of Work Discord server to provide mentorship to people there.
I firmly believe that the best thing one can do is help others grow and I try my best every day to provide guidance and help.
Conclusion
There’s not much else to the story other than my hope that this serves as an inspiration to those who may be going through difficult times or times of self-doubt. It isn’t always easy to see the silver lining when you’re in the thick of it but I do believe that every hardship we face refines us to be better versions of ourselves.
The journey to becoming a software developer is not an easy one. But if there’s one thing I can say with 100% certainty, it’s this: If I could do it, so can you! It is important that you surround yourselves with people who build you up rather than those who bring you down.
If you have any questions or need to speak with someone please feel free to leave a comment and I will personally get back to you as quickly as possible.
If you do not feel comfortable leaving a comment here, feel free to reach out to me on Twitter via DMs, or Email.
Such an inspiring journey !