I studied Microbiology. Today, I build payment systems and AI products. That transition usually surprises people, and it used to surprise me too. This post isn’t about following a perfect roadmap into software engineering, but about how curiosity, problem-solving, and skills from an unexpected background shaped the way I build software today.
When people hear that I have a Master’s degree in Microbiology but work as a software engineer building payment infrastructure and AI systems, the reaction is usually a brief pause followed by either “How did that happen?” or “That’s interesting, tell me more.” This is that story. Not because this path is the right one, but because it shows that there are many valid ways into software engineering and that unconventional backgrounds can be a genuine strength.
My interest in computers did not begin in a computer science classroom. It started with sci‑fi movies and the idea that someone could bend digital systems to their will. When my parents bought our first desktop computer, that curiosity turned into hands‑on exploration. Years later, on that same machine, I wrote my first HTML page. It was simple, but something clicked. I could create things, not just consume them.
Despite that curiosity, I studied Microbiology and genuinely enjoyed it. Learning how microscopic organisms influence disease, ecosystems, and survival itself was intellectually satisfying. Still, throughout my undergraduate years, I found myself gravitating toward computer science students in my hostel. While many of my course-mates focused strictly on lab work, I was learning basic Python from friends, not for grades or requirements, but out of curiosity.
The real turning point came during my Master’s research between 2019 and 2022. My thesis focused on the molecular characterization of antibiotic resistance in E. coli and Klebsiella pneumoniae from livestock farms. This work went far beyond wet‑lab experiments. It involved processing whole genome sequences, identifying resistance genes, analyzing virulence factors, and making sense of large datasets. At that point, Python stopped being optional and became essential.
Bioinformatics tools are powerful but often cumbersome. Many are command‑line programs with strict input formats, cryptic errors, and repetitive workflows. Running them manually across dozens of genome sequences quickly becomes exhausting. To cope, I started writing scripts. They were not fancy applications, just Python scripts to automate my work by passing raw genome data through multiple tools, handling file formats, and generating clear visual summaries of resistance patterns across samples.
What surprised me was that other graduate students began asking for those scripts. I had not set out to build reusable software. I simply wanted my own work to be easier. That was when it became clear that solving real problems with code felt more satisfying than anything I had done at the bench.
Around the same time, I built a simple parallax‑effect website for my research lab. It was only a demonstration site, but my colleagues’ reactions were telling. They were impressed not just by the website itself, but by the fact that someone from Microbiology had built it. That reaction confirmed what I already felt internally. I enjoyed building things.
Beyond my research, I took on more technical projects. I taught undergraduate students basic Python and scripting, introduced them to computational biology, supervised wet‑lab work, and showed how code could enhance their research. I also built the Postgraduate Students’ Association website for my university, handling everything from design to deployment. Each project reinforced the same realization. I enjoyed writing and improving software far more than pipetting samples or waiting days for culture results. The tight feedback loop of coding, writing something, running it, breaking it, and fixing it suited me.
After completing my MSc in 2022, I faced a choice. I could pursue a PhD in Microbiology or pivot fully into software engineering. On paper, staying in academia made sense. I had the background, strong bioinformatics skills, and my supervisor’s support. But I could not ignore what energized me versus what felt like obligation. I chose software engineering, not because I disliked biology, which I still find fascinating, but because I enjoyed building software more.
That decision was uncomfortable. I was leaving a field where I had clear credentials for one where I would be working alongside people with formal CS degrees and years of experience. What helped was realizing that I already knew how to learn complex domains quickly. If I could teach myself enough bioinformatics to analyze whole genomes and build tools others relied on, I could learn production‑grade software engineering.
My first professional software role was with a Europe‑based software consultancy, working remotely. I built web applications for infrastructure management and data collection systems. The technologies were new, including React, TypeScript, and cloud tooling, but the problem‑solving approach felt familiar. Break problems down, test assumptions, document clearly, and iterate.
Later, I joined a Nigerian‑based edtech and AI company and worked across multiple SaaS products. I optimized a care‑home management platform, redesigned a telemedicine portal, and improved an educational platform used by thousands of learners. Over time, I transitioned into AI engineering, which felt like a full‑circle moment. I worked on deploying and fine‑tuning open source large language models and built AI‑powered systems for document processing, OCR, and intelligent conversations. One recent project involved an AI credit controller that conducts autonomous but ethical conversations about overdue invoices, a problem that requires both technical depth and sensitivity to human behavior.
More recently, I have been working as a frontend engineer at a West Africa‑focused fintech building payment infrastructure for financial inclusion. I have helped build customer dashboards and payment systems supporting cards, transfers, USSD, and mobile money. These payment methods are essential for users often excluded from traditional banking. The platform now serves over 100,000 users.
My biology training emphasized habits that continue to shape how I work as an engineer. Research trains you to question assumptions, test hypotheses, document everything, and reproduce results. Those habits influence how I approach debugging and production issues by isolating variables, testing systematically, and writing things down. Working with genomic data also taught me that data visualization is about communication. Whether visualizing resistance genes or transaction histories, the goal is always clarity. Biology research also made me comfortable working across disciplines, a skill that translates well to collaborating with designers, product managers, backend engineers, and data scientists.
Bioinformatics instilled an automation mindset as well. If you repeat a task more than twice, automate it. That principle carried directly into building reusable components, scripts, and internal tools. Finally, working within tight research budgets taught me how constraints shape good design. Limited resources do not limit good engineering. They clarify priorities. That lesson has been invaluable when building systems for users on older devices, slow networks, and cost‑sensitive markets.
Three years into my software engineering career, I do not regret the detour through Microbiology. It did not slow me down. It shaped how I think. When building AI systems, I pay close attention to data quality and validation. When optimizing performance, I think in terms of trade‑offs. When explaining concepts, I draw from years of teaching non‑technical students. Great engineers come from many educational paths. What matters most is clarity of thought, willingness to learn, and the ability to build things that actually work.
If you are considering a transition into software engineering from another field, a few lessons stand out. Your background is an asset and complements traditional CS training rather than competing with it. Build things that solve real problems. Start before you feel ready, because confidence follows action. Find the intersection that makes you unique and accept continuous learning as the baseline.
From processing genome sequences in a Nigerian university lab to deploying AI powered applications in production and building payment systems used by over 100,000 people, it has been an unexpected journey. The common thread is not domain knowledge but approach. Identify a problem, learn what is needed, build something useful, and share it.
If you are reading this with a non‑traditional background and wondering whether you belong in tech, you do. Your background is not something to overcome. It might be exactly what makes you valuable.
Originally posted on Hashnode: full article
Top comments (0)