There’s no better time to review the past year than 30 days into the current one. If it wasn’t clear, I make the rules around here, so let’s reminisce. 😝

Work

For a year like 2021, it’s only right that I begin my yearly review with work. On February, 2021 I joined Koa fulltime after spending ~2years at PetraTrust doing mostly frontend engineering. While at Petra, I used to tinker with our rails + grapqhql backend and after a while, I realized I enjoyed doing that more than writing components & screens. My fondest memory being the period when Apetsi and I attempted to optimize the runtime of our ruby/rails test suite.

I had also developed alot of interest in golang, ledgers & fintech on the side and so when Koa(go + fintech) came calling, I had to answer.

Koa

First of all, fintech in Africa isn’t for the faint hearted. It’s whole jungle out here. I could have sworn I was going to be building fancy ledgers and moving money in the coolest way possible. A pipe dream, tbvh.

In reality, it’s just SOAP api’s, private tunnels, 6 decimal places, double-payments, regulations, licenses, reconciliation, shitty 3rd party providers, fraud, angry customers, and more reconciliation. It never stops. Combine all these with tricky race conditions and you can easily create hell’s sandbox. LMFAO. I swear I’m funny. You know, I would have added sandboxes to my godforsaken fintech list but these 3rd party providers don’t even have sandboxes. You have to test in production. I’m not crying, you are.

Beyond the madness however, I experienced alot of techincal growth at koa. Not a coincedence since I shadowed Bubu the entire time. Frequently talking to Alexis also gave me a founders perspective when it comes to running companies & raising funds. I’m glad I got the chance to work there.

Tommorow is my last day at Koa, it’s time for me catch some rest and move on to other things.

Brank

One evening in November 2020, Casprine told Raaj and I that he wanted to build a service like plaid/mono for the ghanaian market. It sounded very intersting, so interesting that within an hour, we had designed a very simple version of the backend service that would be powering this application. We named it brank, purchased the domain name, created the github org and started hacking. Just like that, we set out to work on a bank of banks.

On 1st December, 2020, we pushed our first commit. Raaj was handling integrations(banks, fintechs, etc), I was building the core service(data processing, product apis, webhooks, etc) and casprine as usual handled everything frontend(dashboard + widget + sdk). We were in a new domain, so we actually spent alot of time reverse engineering the products we were trying to emulate(mono/plaid). Sniffing network requests and what not.

Aside all the engineering work, I was the PM on this project. I had to scope out a plan and make sure those 2 smart guys followed it religiously. I brought team together every weekend to speed up development. Infact, on one saturday, I actually had to bribe them with drinks before they agreed to work. People/Product management is that easy 💅🏽

Unfortunately raaj left the project very early, and so I had to own integrations too. That worked out fine and tbh I had too much fun writing them statement parsers.

After 3 months(January - March 2021) of active coding, we had a full product. A pretty website & dashboard, a beautiful widget + js-sdk, integrations with FNB & Fidelity Bank, webhooks, authentication, balances, transactions, accounts, and APIs to enable other companies easily tap financial data of their users. I actually tested it with my bank accounts and it worked like charm. I was proud as hell.

We attempted to build a startup around it, even had people ready to invest in us but that never worked out and I’m going to list some of reasons why that never worked.

  • We jumped right into the code. You should probably never do that unless you’re building for fun. There wasn’t a market for our product yet. No demand whatsoever, we solved a problem that didn’t exist. I know what you’re thinking though, but trust me I grew up here, things don’t work that way here.
  • Writing code is always the easiest part. It takes more than 2 tech bros to run a startup. The startup grunt work was too expensive for us at the time. I wasn’t ready to stop writing code to talk to people. I couldn’t afford to do that. Plus you see that CEO thing where you have talk(regulators) talk(employees) talk(partners), yeah me and my guy were not ready for all of that. We’re still honing our skills.
  • Reverse engineering and integrating bank apis is very hard. Who would’ve thought 😝

I don’t think brank “failed” - it was never meant to become a startup, so to me, we acheived our goals. Regardless, mono operates in Ghana, maybe they can tell you how the ghanaian market is 😉

Casprine & Myself in 1972 after fighting off British Soldiers

Casprine & Myself in 1972 after fighting off British Soldiers

So what happened next? Well we archived the project and moved on to other things. Besides mono had already penetrated our market so it was easy to make that decision. The hosted version is still active thanks to heroku (even though I think the integrations have regressed as they’re not being maintained).

Main website - https://withbrank.com
Live demo - https://demo.withbrank.com

Personal Development

Around June/July last year, I created a personal development plan for myself. My goal was simple, get my feet dirty with cloud native tech & distributed systems. And so I spent the last 6 months reading and playing with containers, linux, k8s, distributed storage patterns, rpc/grpc, binary protocols, observability and all the cool stuff. Also later in the year, I was lucky to work on some multi-cloud replication which forced me to to acquire some rudimentary networking knowledge. Forced because clearly, I was trying to impress my CTO. Any other person and I would tanked the task completely. Ha!

Career wise, I decided to use the dropbox career framework to guide my path. After going through the IC section, I realized I was pretty much an upper IC2. So for the rest of the year, I ensured all the responsibilities required for an IC2 manifested through my work. Once I felt confident, I started taking on some IC3 responsbilities/behaviours. Most of my focus was on soft skills to be honest. I have the tendency to be very direct and more often than not, that’s not the right way to go about things. I can’t count the number of times I had to edit slack messages to ensure that I wasn’t being passively aggresive. Or taking pauses during convos to find a less aggresive word. It’s not easy but we’re getting there. If I worked at dropbox, I’d probably be asking my manager for more responsibilities and trust so I can transition to an IC3 but hey I don’t work at dropbox(once again, I’m not crying, you are)

Galamsey

Digging for gold online is one the best ways to mess up your health. In my case, blurred vision, wrist aches, back pains. To keep up, you’ll most likely abuse pain killers till they don’t work anymore. Your personal relationships are going to take a hit too. You’ll lose very important people, and even worse, you wouldn’t realize the amount of harm you’ll be causing till it’s too late. As if all that wasn’t enough, you’re going to develop unhealthy eating habits to keep up with your inhumane routine. All those slack pings, yeah they’ll drive you crazy, i’m not even joking.

If you’re from our section where there’s alot of black tax and you also have the habit of trying to fix everyone’s problem, you’re unconsciously going to drag yourself into the pits. Your body is going to grow very weak. It’s very easy to disregard your health when you’re trying to keep the boat floating. Take care of yourself, invest in ergonomic tools(they make alot of difference), catch some good sleep, take breaks between work, use the night mode feature on your laptop and also try and find some activity that’s physically intense. Stay healthy.

Blockchain

I finally hopped on the blockchain wave after ~4 years of ignoring all the hype. I had to understand what’s it’s all about. Most of my knowledge is centered around bitcoin to be fair. I don’t know much about other chains. I’m a bit of a center minimalist when it comes to crypto. From an engineers perspective, it feels a bit like a scam actually.

Regardless of what I think, crypto and blockchains are here to stay and I believe there’s a huge use case for stablecoins, especially when it comes to same day cross border payments. Which is why I believe crypto payment companies like fluidcoins are going to make it.

If you’re working on any crypto payment processing product and you need a techie who actually knows how to build, enter my twitter dms and let’s talk.

Interviews

Interviewing for fun is something I picked from convos with Kofi(a senior engineer) some years back. Not only does it build your confidence, it also allows you to know your market value and weaknesses(if you find a good interviewer). Plus, the rejections don’t hit that hard. In my case, I got a shit ton of rejections(i’m not crying, you are) and a few offers but I wasn’t looking to switch orgs at the time. Really love the confidence it builds though. Will recommend.

The secret is to avoid companies with algorithm heavy interviews, as those require you to put in more work than required and not favorable to people like me who struggle with concentration.

Reading

For my standards, I consumed an unhealthy amount of books and articles last year. Highlights being designing data intensive applications, concurrency in go, docker in action and bits of the linux programming interface. I carried a few of them into this year, but 2021 was a read heavy year for me.

2022

I’m just trying to exercise and sleep more. That’s my topmost priority for at least the first quarter of the year. We’ll figure out the rest later. I had a very long year in 2021 and so I’m really interested in seeing how this year goes. Here’s a link to my spotify wrapped for 2021

Catch y’all in another piece 👋🏾