Hard Lessons I Learned From Joining A Software Engineering Fellowship Program

Olabayo, Fellow at The Bulb

If you’re open-minded, you might learn a thing or two.

In hindsight, the decision to become a software engineer by going through an engineering fellowship is one of the fastest-yielding investments I’ve ever made, as well as arguably the most impactful investment I’ve made to date.

It’s popularly quoted (in different ways) that education is the key. Regardless of whether the padlock has been changed or not, education still opens doors of opportunity for those who can properly leverage the utility that education has to offer.

I won’t bore you (at least not today 😉) with the tale of how I ended up as a software engineer in one of the top banks in Nigeria four months after graduating from a software engineering fellowship program.

I will, however, share with you some of the hard lessons I gleaned while in a software engineering fellowship at The Bulb Africa.

Strap in. This may be bumpy. If you’re, however, open-minded, you just might learn a thing or two.

Click here if you want to become a TECH BRO/SIS & start EARNING BIG

THE WORLD PAYS FOR RESULTS, NOT HARD WORK

The first lesson I learnt from Fellowship at The Bulb was that the world is driven by utility. We all pay for results, not for effort.

I had colleagues who lived near the office and could afford to leave home by 7:30 am and arrive at the office by 8 am. I live far away from the office. So, I had to wake up by 5 am, leave home by 6 am, and arrive at work after seven and sometimes 8 am (depending on traffic).

Guess what? Nobody cares. I still have to perform as efficiently as those who don’t go through as much stress to get to work.

In software engineering and other exact sciences, it either works, or it doesn’t. There is little to no fair margin for error.

Suppose you’ve ever been stranded because your banking applications weren’t working. In that case, you can attest to the fact that at that time, you weren’t willing to consider the possibility that the software engineer who should have built the project better had to miss work because of malaria.

People’s lives will one day depend on the projects you build, it’s a huge burden to bear, and it’s one you will live with.

YOU’RE NOT THE BEST; YOU HAVE MUCH TO LEARN

If you’ve been learning online or in isolation (without a developer community to appraise your work), it’s easy to think your code is the best thing since sliced bread 🤣.

Believe me, your code is far from perfect. The “know it all” confidence that you have has got to go.

Fellows training at Fellowship at The Bulb
Fellows training at Fellowship at The Bulb

I thought I could write code just because I was better than everyone around me. I got a rude awakening when I joined the fellowship and saw people much younger than myself performing signs and wonders.

It is crucial that you’re humble in this field of software engineering; an arrogant attitude will deprive you of a lot and stifle your learning. When you’re corrected, don’t get defensive, you don’t need to justify your work except when asked to.

More often than not, “thank you for your feedback, I’ll implement it” is the best way to respond to constructive criticism.

Your work will annoy your teammates because writing code that others can understand is way harder than just writing code.

A colleague who had to read your ugly code may give you a stern rebuke. You need to have a healthy appetite as you will eat a lot of humble pies.

What does matter is that you don’t lose your temper. Stay whelmed and keep learning.

Click here if you’re looking to build a successful career in tech within 4–6 months.

BEING NICE IS MORE IMPORTANT THAN BEING TALENTED

The world places a lot of priority on talented people (as we should) because talented people deliver results, and we live in a utilitarian society.

Be that as it may, the only reason why a senior or colleague will be up late at night or in the wee hours of the day to help you debug your messy code isn’t that you’re talented. It’s because they like you.

I made a mess of many group projects. Often, my colleagues would sit with me and literally handhold me through the process of pulling from Github and merging my commits.

I was one of those people who would commit code that has bugs to my repo 😓. I’m one of those late bloomer types of people. I wouldn’t have made it through the programme without the help of the cohort.

Besides my colleagues, I got CTOs (three in fact) to mentor me at different times. People who some of my colleagues complained weren’t readily available were the very people I was having conversations with online.

This isn’t to say I’m a super nice dude. I’m known for being troublesome 😂; however, I make up for it by owning my flaws and apologizing.

TAKING THE ADVICE OF YOUR SENIORS WILL TAKE YOU FAR

I write a lot on LinkedIn and Hashnode (more or less daily).

When I started the program, I was on a mission to connect with all the facilitators and my cohort on LinkedIn. One of the facilitators saw a new post on LinkedIn from me daily. He advised that I started blogging.

A group of trainees learning to code
A group of trainees learning to code

I expressed concern with writing at this stage of my career because I don’t know as much as I want to, and he encouraged me to do it, so I started writing on Hashnode.

I got technical writing job offers due to blogging on Hashnode, and the monies I earned from those gigs helped me meet some of my needs at the time.

Asides from the money, I quickly grew a reputation as “the guy that writes”. A lot of colleagues read my work before they knew me. I also endeared myself to a lot of senior people in the cohort as a result of writing.

Most importantly, by taking that advice, that senior colleague became invested in my growth as a developer and a technical writer.

He accepted an offer from another organization, and he became one of the CTOs I had frequent conversations with.

When some colleagues expressed sadness about not getting enough time with him, and I mentioned that he and I chat on Whatsapp, my colleagues stared at me in disbelief.

LEARNING HOW TO HANDLE DESPAIR IS A MUST

I quit a job where I had once impressed the regional manager of the organization due to my diligence.

This regional manager would show up at my branch and sit with me to talk about the organization, plans for future expansion, and how many opportunities exist for me within the organization. So, he wasn’t too pleased when I resigned.

Unknown to him, I was scared when I quit because I realized I had put myself in a “sink or swim” position. I faced imposter syndrome, I faced fear, I faced apprehension, and I also faced despair as a result of stepping into the field of software engineering.

Anyone who has tried to learn software engineering will know that it put a massive strain on your mind and your entire life. It affects your mood. When your code isn’t running, you may lose your appetite. You may even lose the will to be around your loved ones.

If you’re determined to learn how to code, you will obsess over code. You will dream about codes. You will wake up at midnight with a solution to code. You will try the solution, and it will fail. You will not be able to go back to sleep. You will get code ideas in the shower at bizarre times.

It’s like your brain is running code in your subconscious. Debug mode will be your default setting.

Learning how to handle all the different waves of emotions that will come at you is vital, or you’ll burn out. I had mentors and friends who encouraged me when I was down. I had anime. I had music, and, at times, knowing when to turn off your laptop (and keep it turned off) helped me stay whelmed.

FINALLY…

I can keep going. However, I don’t want to overwhelm you with information.

I don’t regret choosing this path. It pays well… really well 🤑. It has afforded me the opportunity to see a clear path to escaping poverty, which is enough to motivate any struggling individual.

I can’t teach you everything, and nobody can. You will figure out other things as you go.

Two quotes that I will leave you with are:

“You don’t have to be great to start, but you have to start to be great” (Zig Ziglar)

“If you do what others won’t, you’ll get what others can’t” (Femi Aluko).

All the motivational quotes in the world won’t work if you don’t. I do hope that some of what you’ve read will comfort you when it gets tough.

And yeah, you too can join a software engineering fellowship program and learn your own hard lessons. You can start here.

1 thought on “Hard Lessons I Learned From Joining A Software Engineering Fellowship Program”

Leave a Comment

Your email address will not be published. Required fields are marked *

Join Our
Newsletter

Subscribe to receive our latest blog posts & newsletters directly to your inbox!