My journey to software development, my mistakes, my challenges, and my joy.September 16th, 2020 • 7 min read
When I was a kid, I wanted to be an astronaut 🚀. Growing up, I realize it might not be a fun career as I imagined from watching those cartoons. I always found science and technology fascinating. As a young kid, I used to tear my electronic toys apart just to have the chance to see the inside which always fascinated me, that’s how far my curiosity went. I would scavenge motors, LEDs from broken appliances so I can build stuff with them, I once build a boat using foam and a motor. I couldn’t dig deeper into electronics, due to lack of guidance, it was the late 90’ there weren’t many computers in Haiti, let alone the internet.
Fast forward a few years, I’m a teen who can’t even open a browser and surf the web. I had to get help from a friend and from that work my way up, I would often visit cyber cafes to surf, playing games on websites like Miniclip, Dragongamez. I was fascinated by how huge and cool the internet was.
By the time I reach my late teen I was quite proficient using a computer, started to learn programming on my own. I didn’t own a computer back then, I’d use a friend’s computer, my sister’s, or the school computer every time I get the chance. My first programming language was C, I learn the syntax, do some minor exercises but never did some big project. I was learning it wrong, I didn’t know anybody that was a programmer that I could ask for help. I read a lot as an avid reader, while it was a good thing and that helps me have a birds-eye view of programming, but I wasn’t good at all at building things, because I wasn’t practicing. Then I started learning Python, I was amazed at how simple and concise the language was, I was more into hacking than building software. Hacking was just hard. A friend then approaches me and advised me to learn how to build software instead of learning how to break into computer systems, it did take me time to realize he was right. So I started to learn HTML and CSS. Still, I enjoyed reading but didn’t practice enough, yet I have a good memory but nothing can come close to practicing when it comes to programming. I learned that the hard way, took me months or a year 😔 .
In my last high school year, I had no clue what should I do next. Yes, I love programming and it was obvious for everyone. But I was thinking that I should not go to university to learn it cause I can do it on my own. I thought of going into Finance or Civil Engineering. Well, I went into Civil Engineering in 2013, I liked it but not enough, I would skip classes, never work the Math, Physics, and Statistics so I can spend time learning on my computer or watch TV shows.
In the end, I got suspended for a semester because of my low GPA. It was always a battle for me, I wasn’t happy, and all the classmate could see that. I was dragging myself to class but my mind was elsewhere. I was supposed to graduate in 5 years but I realize it would take me 2 more years. I didn’t see myself pursuing a career in Civil Engineering. After about 4 years of Civil Engineering courses, I take one of the biggest decisions in my life…
I DROPPED OUT and I said to myself in a year I’m going to be a software developer. My family didn’t take that lightly though, but they eventually got over it. With the money I was saving for about a year, I bought a computer and made myself the promise I’d learn and build a career in programming.
I then continue learning Python, Java. But I spent most of my time playing video games on my computer, I didn’t build much. I was going through books and online courses just so I finish them but I didn’t learn anything. When it comes to software development, you have learned something when you can reproduce it. Otherwise, you would think you know it until it’s time to do it. I was trying to read and memorize syntax, piece of code instead of letting them sink in by practicing regularly. Well, that didn’t help much. One day, while using a defective console controller on it, after a few seconds the computer suddenly shut down and it was the end of it. I so regretted that, but what I regretted more was my failing to keep my promise to the point I fall into depression. It was a real battle. I saved money to buy a second computer and managed to get it by January 2018. I said to myself I won’t make the same mistake again!
I decided to build Android apps. I wanted to build a real estate app, Kunuk, where users can browse through properties they can buy or rent. So I started learning Java, the modest experience I had in C help me a lot, but Java was a different beast, so I learn while building the app. I work at night because we would have electricity from 11 PM to 4 AM, and I was more focused at night. It was exhausting but I was passionate, happy, and sometimes mad when I can’t fix a bug or can’t figure out something. I’d use Stackoverflow a lot. I used a board as my Scrum board and a few stick-it papers, so I can stay organized. I asked a few friends to test the app and I would release a new version every weekend. I was finally learning the right way, by practicing, by building, but reading was also in the mix and watching video tutorials.
By March 2018, a friend of my girlfriend told her about an Android Bootcamp, organized by Codepath Haiti led by Carly BAJA, who also has a Software Development Company, Transition Digitale. I signed up immediately, then they requested me to build a simple Todo app by following a video tutorial to be eligible. I built it, and after a few weeks, I’ve been approved. I would have to move to my cousin’s to Pétion-Ville, a city 200km from home, and spent two months to attend the Bootcamp. I had to take a break from Kunuk so I can be focused totally on the Bootcamp which was quite challenging. But I did my best. My final group project was a public finance app for the government which a government official, a designer, and I built. That app would later serve as a Minimum Viable Product to help Transition Digitale land a contract with the government to build the full system, where any citizen can have access to various ministry budget and spending. I joined Transition Digitale(we work remotely) and the Codepath Haiti team. I could finally be independent and take care of myself, I moved definitely to Fermathe, 30 min from Pétion-Ville.
Software development is hard! There’s no doubt about that and anyone telling you the opposite might be well, not a real developer. The sooner you bear that in your mind the better because you’d be prepared mentally for the hardship. Learn by building stuff. Connect with other developers. I’m doing that because it’s my passion, and it makes me happy. I enjoy doing it, I enjoy the process, the lifestyle, the power where you get to build whatever thing you imagine, the money! I make sure that I improve day by day because things change fast in this industry.