How I Landed My First Software Engineering Job Before Graduating
My Journey into Tech
My name is Arinaho, and this is the story of how I secured my first software engineering job before even graduating. Unlike many students who get bursaries from tech companies and have a guaranteed job post-graduation, I had no such security. My funding came from Wits University, and while I had excellent matric results—placing in the top 10 (#7) in my province—I faced rejection after rejection when applying for bursaries at tech companies. Ironically, I would later land a job at one of these very companies.
Discovering Programming in University
In 2021, my first year at university, I was introduced to the world of programming. I was pursuing a BSc in Computer Science, which spans three years. Before university, my only experience with coding was using the Grasshopper app by Google, which was meant to teach JavaScript. To me, it felt more like a game than actual programming.
During my first year, I learned Python and tackled Algorithms and Data Structures using C++, which was the toughest course in Computer Science. Alongside this, we studied Basic Computer Organization (understanding how computers work), Mathematics, Applied Mathematics, and Physics as an elective. It was during this time that I discovered Flutter, a cross-platform framework. However, my laptop only had 4GB of RAM, so I could only study it theoretically through YouTube.
Leveling Up in Second Year
By 2022, I had a better understanding of what was ahead: Java, Object-Oriented Programming (OOP), and Android development. Wanting to stay ahead, I learned Android development during the holidays before the academic year started. That year, we also studied Relational Database Management Systems (RDBMS) and SQL.
I also upgraded my laptop to 12GB of RAM, which allowed me to dive fully into Flutter & Firebase. I started building all sorts of apps and committed them to GitHub. At the beginning of the year, I also learned React while working at a small company called Weball Technology, where I built and deployed an app using Flutter & React.
Back at university, we studied Algorithm Analysis, Computer Networking, and some challenging math. In fact, I failed a module called Basic Analysis but managed to progress to the next year through the PMIN program. I also struggled with Lagrangian Mechanics under Computational & Applied Mathematics, failing all the tests. However, I was performing well in my other courses, so I managed to pass overall.
Applying for Graduate Programs
At the beginning of my final year (2023), I applied for a graduate program at Entelect but didn’t receive an immediate response. Determined to bounce back from my previous struggles, I regained focus. This year, we tackled Advanced Algorithm Analysis, Machine Learning, Computer Vision, Operating Systems, Parallel Computing, Software Design, and Computer Graphics & Visualization—where I particularly excelled in all those courses.
The Breakthrough Moment
A friend suggested we participate in GradHack, a hackathon hosted by Discovery Limited. We joined and placed 5th! After the event, Discovery invited us for interviews, and soon after, I received my first-ever job offer as a software developer. I was ecstatic!
Around this time, tech companies started visiting our university to recruit final-year students. I applied to Dariel Software and BBD Software. Entelect finally responded and invited me to an open-day interview, but I was rejected the next day. I was devastated because I wanted to work for a strictly software-focused company.
Technical Interviews and Offers
Dariel Software invited me for a technical interview, which I completed in under 30 minutes—it was surprisingly easy. They later invited me for an in-person interview, but I overslept and missed it. Fortunately, I already had a job offer, so I didn’t stress too much.
BBD Software’s technical test, on the other hand, was a challenge. I struggled to complete all the tasks within the time limit, and it made me question my Java skills. Convinced I had failed, I put it behind me. However, 3-4 months later, BBD invited me for an interview.
The interview felt more like a casual conversation than a formal assessment. The interviewers were incredibly friendly, and I left feeling optimistic. A few minutes after the interview, they sent me a job offer. It ticked all my boxes, so I accepted it immediately. After signing the contract, they even invited me for an office tour!
Where I Am Now
I completed my final year and waited to start my job. Now(2025), over a year later, I’m happy and thriving in my role, having transitioned into a Cloud Engineer.
That’s my story! Let me know what you think in the comments below. If you're a student trying to break into the tech industry, keep learning, keep building, and don’t let rejection discourage you. Your opportunity will come!