Introduce yourself
I’m Daniel. I’m a backend-focused fullstack engineer with over 6 years of experience building scalable, data-driven systems especially in fintech, analytics, and edtech domains. I’ve worked with technologies like Golang, Node.js/NestJS, Express.js, React, Java(SpringBoot), PostgreSQL, MySQL, MongoDB, Redis, RabbitMQ, Apache Kafka and containerized deployments using Docker & Kubernetes. I’m particularly drawn to solving backend performance problems, building real-time systems, and crafting products that are both user-centric and developer-friendly.
I started off building general-purpose web applications and gradually found myself drawn into backend systems, where I now thrive designing APIs, architecting workflows, and working on cloud-native platforms. While I mostly operate in the backend world, I still have a keen eye for frontend work and have shipped production-grade UIs using React and Chart.js. I also enjoy mentoring, writing documentation, and occasionally over-optimizing SQL queries for fun.
Why hire me?
I’m pragmatic, adaptable, and self-driven. I’ve built products solo from scratch, led complex backend initiatives, and collaborated closely with designers, PMs, and QA to deliver software that works in the real world. I can be counted on to take ownership, ask the right questions, and get things done without hand-holding.
What are your personal goals?
In the next 5-10 years, I want to evolve into a more senior engineering leadership role, ideally in a platform, infrastructure, or product engineering team at a company solving hard & complex technical problems. I want to build tools and services that empower others. I’m also building a software development agency and developing SaaS products to support financial freedom, so I can choose the kind of work that excites me.
Situational Questions
Tell me about a time you faced a challenging technical problem. How did you approach it?
While building a transaction reconciliation system processing over 1 million transactions daily, we had no queuing system in place initially. I had to process large Excel files from banks like VFD and compare them against our data efficiently, accurately, and without killing the server. I leveraged Node.js streams with custom chunking logic and WebSockets to update the frontend on progress in real-time.
I also implemented metadata tracking and separate storage for reconciliation results, enabling us to build an analytics dashboard without compromising performance. It wasn’t easy, especially given the inflexible schema I inherited, but the final solution was robust and scalable.
Describe a situation where you had to work under pressure to meet a tight deadline.
At Mida Technologies, I was tasked with building a BVN validation service integrating multiple poorly-documented third-party APIs. The project was time-sensitive due to regulatory deadlines. I prioritized stabilizing the core integration, deferred non-critical UI enhancements, and offloaded long-running validations using Redis queues. We shipped on time, and the solution later became the basis for a more comprehensive debtor verification system.
Give an example of when you disagreed with a team member on a technical decision.
In the early stages of our reconciliation system at VPay, there was a debate about whether to implement a queuing system (e.g., RabbitMQ). Some stakeholders felt it was overkill. I disagreed but compromised by building a custom chunked processing system using Node.js streams, this allowed us to defer queuing until we had performance issues. Ultimately, when we scaled, we transitioned to RabbitMQ as I originally proposed, but the compromise bought us time.
Tell me about a project where you had to learn a new technology quickly.
For a product called VPay Storefront, I was brought in mid-way and had to master dynamic theming with HSL color values for custom merchant branding. I had never worked with HSL manipulation before, but within days I wrote a custom function to generate HSL variants from HEX inputs, ensuring color consistency across the storefront. The feature was a hit and allowed merchants to deeply customize their subdomain stores.
Give an example of something highly impactful you worked on.
I built and led the entire development of MidaX, a debt aggregation and analytics tool used by financial institutions. It handled debtor verification, financial data enrichment, and provided real-time analytics. I also implemented the full audit trail, authentication layer, role-based access control, and real-time notifications. This project was launched under tight timelines and played a critical role in the client’s debt recovery strategy.
Tell me about a time when you had to work with a difficult team member.
I rarely work with difficult team members mostly because I possess an “uncanny” ability to be in good terms with everybody when it comes to my work as a Software Engineer. The reason behind this is that I truly believe in communication as a tool for solving any form of misunderstanding. Provided the other individual is not being antagonistic to my personality and most of our misunderstanding have to do with work I have no doubt that we can find a common ground. Yes I am truly that flexible. But the most difficult team members to work with are those who are arrogant and make constant effort to demean other teammates.
Describe a situation where you had to choose speed over stability.
While building the checkout system for VPay Storefront, I had a very tight deadline. I focused on getting the guest checkout and location selection logic working correctly, while skipping full test coverage. However, I ensured that I added detailed logging and fallback behaviors. Post-launch, I added tests incrementally. The pragmatic choice ensured we didn’t miss the launch and the system remained maintainable.
Tell me about a time you made a mistake.
I once underestimated the performance hit of running synchronous file parsing in a large import system. It caused server slowdowns for other users. After identifying the problem via logs, I quickly refactored the parsing logic to run asynchronously and offloaded processing to Redis queues. It taught me to always test bulk operations under load.
How do you manage multiple projects?
I stack small tasks that can be parallelized and unblock themselves naturally. For larger tasks, I timebox exploratory work and keep communication tight with stakeholders. At VPay, I juggled multiple products: reconciliation system, reporting dashboard, and storefront. I relied on detailed task breakdowns, regular demos, and prioritization frameworks to manage delivery.
Give an example where you had little guidance.
While rewriting the product image script for Push (UK), I was handed a 1000-line legacy PHP script and told to “optimize it.” No tests, no documentation. I reverse-engineered it, rewrote it in under 300 lines, added logging, and made the logic modular. The team was thrilled with the outcome, and the code became maintainable again.
Companies I Want to Work For
- Stripe: They build financial infrastructure that empowers developers and businesses globally.
- Uber: I spend a considerable amount of time on their engineering blog and I see the really cool and complex problems they face and eventually solve. Oh and they also use Go a ton there.
- Vercel: Their focus on DX and frontend innovation aligns with my passion for performance.
- Remote: I believe in global opportunity and remote work.
- Any product-driven company solving real-world problems with clean architecture, strong engineering culture, and a commitment to developer growth.
Questions for the Interviewer
Recruiter
- What team would I join? Who do I report to?
- What’s the hiring timeline and budget?
- What does the org structure look like?
- What is the most pressing engineering problem that the team I would join is facing right now?
- What would the ideal candidate when hired do within the next 3 months/6 months/1 year that will make you feel that you made the best decision is hiring such person?
Technical
- What’s the onboarding like?
- What tools support debugging, tracing, and learning?
- How is code ownership and operational responsibility shared?
Misc
- Is the team new or established?
- What are some typical deliverables?
- Any required overlap hours?
- Are provisions made for employees personal development efforts?
- Do you make provisions for healthcare benefits for your employees?
System Design Guide Questions
- Who are the stakeholders and end-users?
- What’s the projected scale and traffic?
- What are transactional vs read-heavy parts?
- What are the sources of truth?
- What constraints (legal, performance, data retention) must we account for?
That’s my journey, filled with systems built, bugs squashed, and lessons learned. There’s still more to come, but for now: onward and upward.