Back to Career

Lead Software Engineer

Unbanked

November 2021 - June 2023 Full-Time

I was responsible for leading the integration of multiple debit and prepaid card services issued with white label partners who wanted to launch a card that could use their token for payments. Accomplishments include plug-in system implementation, team management, and enhancements to internal system architectures.

Using Crypto to Buy Things in Real Life

At Unbanked, we built a debit card that let people spend their cryptocurrency like Bitcoin or Solana at normal stores. Users could swipe the card at Starbucks and the money would come from their crypto wallet, not a bank account.

I worked here for two years as a Lead Software Engineer. This was a challenging job because we had to connect the blockchain world with the traditional banking system. Over 30,000 people used our cards.

Making It Easier to Add New Partners

When I joined, the company was growing but had a problem. We worked with crypto companies like StormX and Zebec to create branded debit cards for them.

The problem was that adding each new partner took two full weeks of custom coding. We had to write new code for each cryptocurrency and manually set up everything. If we got ten new partners, it would take five months to finish.

I built a White Label Plugin System to fix this. Instead of writing custom code for each partner, they could just enter their cryptocurrency details (like the token address and blockchain), and the system would automatically connect it to our banking system.

This made things much faster. We went from taking two weeks to add a partner down to just minutes. This change helped us grow much faster.

The StormX Card. We went from signing contracts to shipping cards in days, not months.
The StormX Card. We went from signing contracts to shipping cards in days, not months.

Adding Solana Support

Next, we worked with Zebec, a big company in the Solana cryptocurrency ecosystem. They wanted their own branded card.

Adding Solana was harder than Ethereum. Solana is very fast but also more complex. Our system wasn’t built for how Solana works.

I built a custom system using @solana/web3.js that constantly checked the Solana blockchain for new deposits. It had to be fast so users could use their card right after sending cryptocurrency to their wallet. If we missed checking the blockchain even once, someone might have their card declined at a store.

We made it work. Thousands of users could now spend USDC and SOL using our cards, connecting Solana to the Visa payment network.

The Zebec Card. Bridging one of the fastest blockchains to real-world payments.
The Zebec Card. Bridging one of the fastest blockchains to real-world payments.

Working Directly With Partners

The plugin system removed the coding bottleneck. The human side still needed an owner.

I held the technical relationship with around 10 partner programs, including StormX, Zebec, Uberstate, United Coin, and United Token. I ran their onboarding, integration, requirements, and troubleshooting calls, then led the backend changes each program needed. I also worked with our card vendors, CashPass and Tribe, coordinating fixes across their systems and ours.

To keep partners moving without waiting for a call, I wrote the public partner documentation at docs.getblockcard.com: webhooks, custodial integration, KYC, rewards, and testing endpoints. I designed the webhook platform they integrated against, with replay tooling for missed deliveries. I also built simulation endpoints so partners could test card and deposit flows without moving real money.

Leading the Team

I led a team of up to 5 engineers, but not from a distance. For each partner requirement, I assembled a small team from whoever was capable and available, ran the dailies, and owned the domain scope. I implemented the core features myself and delegated the blockchain and white-label subtasks.

This horizontal style worked because everyone could see me shipping the same code they were.

Building Reliable Systems

When you’re working with people’s money, bugs are serious. A mistake could mean someone loses money.

We needed very reliable systems. I led the work to rebuild our background processing using BullMQ and Redis. We moved transaction processing, fraud checks, and email notifications into queues that could handle thousands of operations at once without slowing down.

We also needed a way to test the card system without spending thousands of dollars. I built a Virtual Card Terminal that could simulate every situation: declined cards, timeouts, and other problems. We tested thousands of scenarios every time we deployed new code. This helped us reduce our error rate from 10% to almost zero.

Compliance ran through the same systems. I automated OFAC sanction suspensions, false-positive handling, and KYC status flows across all the card programs. When regulators require you to act on a sanctions match, “we’ll do it manually” is not an answer.

Our architecture wasn't just code; it was a fortress built to protect user funds.
Our architecture wasn't just code; it was a fortress built to protect user funds.

How It Ended

Unbanked was recognized in the Inc. 5000 list of fastest-growing companies. We were processing millions of dollars in transactions. But startups are risky. Even though our technology worked well, the company ran out of funding and had to close.

It was sad to see the company shut down. But what we built was one of my proudest achievements. We showed that cryptocurrency could be used as real money, not just something to invest in.

We built something world-class, and I carry those lessons with me every day.
We built something world-class, and I carry those lessons with me every day.