About this role
FairMoney is building the leading mobile bank for emerging markets. We started with a digital microcredit application on Android, and currently roll out additional financial services (current account, savings, debit card) while expanding the product to Western Africa and South-East Asia.
We are recruiting to fill the position below:
Job Title: Golang Backend Engineer - Nigeria
Location: Lagos (Hybrid)
Role Overview
- As a Senior Software Engineer, you will play a key role in designing and building scalable backend and platform services that power FairMoney's financial products.
- You will work on complex distributed systems and financial processes, contribute to architectural and technology decisions, and help build a reliable platform that can support millions of customers across multiple markets.
- You will also contribute to engineering best practices, mentor other engineers, and take ownership of medium to large-sized technical projects from design through deployment.
What You Will Work On
- Develop high-quality backend features in collaboration with the Product team to better serve our customers.
- Build and evolve platform services that allow individual markets to implement specific features while maintaining a strong common core product.
- Design and develop scalable solutions for complex financial processes using appropriate architectural patterns.
- Drive architecture and technology decisions that enable a reliable and high-quality customer experience.
- Design, develop, and deploy medium to large-sized projects.
- Build and maintain distributed systems and platform services that are reliable, scalable, and resilient.
- Design and improve relational database schemas, ensuring data integrity, performance, and scalability.
- Contribute to engineering best practices, coding standards, code reviews, testing, and operational excellence.
- Provide technical mentorship and guidance to other members of the engineering team.
- Contribute to continuous improvements across infrastructure supporting millions of customers.
- Analyze and improve the efficiency, scalability, and stability of monitoring, CI/CD, and platform integrations.
- Work closely with other engineering teams and stakeholders to identify technical requirements and deliver effective solutions.
Technical Stack:
- Customer-facing product: Android and iOS apps – Kotlin KMP.
- Backend: Golang and Ruby on Rails.
- Background processing & testing: Sidekiq, Temporal (Golang), RSpec.
- ML pipeline: Python / Flask API.
- Cloud: AWS.
- Infrastructure: Kubernetes, SNS, SQS, Lambdas.
- Databases: RDS Aurora MySQL, PostgreSQL, DynamoDB.
- Storage & streaming: S3, Kinesis, Kafka.
- Data warehouse: GCP, GCS, BigQuery, Cloud Composer.
- CI/CD: GitHub Actions.
- Full-stack / Frontend (Good to Have): React Native, Next.js, and modern web development technologies.
Requirements
Must-Have Qualifications:
- 5+ years of professional backend software development experience.
- Strong experience designing and building distributed systems.
- Experience building and maintaining platform services or shared backend infrastructure.
- Strong experience with relational database design, including schema design, data modelling, SQL, indexing, and performance optimization.
- Strong experience with Golang and backend development.
- Experience designing scalable, reliable, and maintainable backend systems.
- Strong understanding of software engineering principles, system design, and object-oriented design.
- Good problem-solving skills and the ability to work on complex technical challenges.
- Good verbal and written communication skills.
Preferred Qualifications:
- Experience building and delivering complex software systems used by customers at scale.
- Strong understanding of professional software engineering practices across the full software development lifecycle, including coding standards, code reviews, source control, testing, build processes, and operations.
- Experience with microservices and distributed architectures.
- Experience with cloud providers, preferably AWS, alternatively GCP or Azure.
- Experience with high-volume systems and designing for scalability, availability, and resilience.
- Experience communicating with users, technical teams, and management to gather requirements and translate them into technical designs and specifications.
- Experience in fintech, banking, lending, or other financial services is a plus.
- Experience mentoring engineers and contributing to technical direction is a plus.
- Comfortable working with AI-native development tools.
- Full-stack experience is a plus, particularly with React Native, Next.js, or modern web development technologies.
Benefits
- Competitive pay.
- Paid annual leave.
- A network of talented colleagues.
- Opportunity to work with a diverse, international team.
- Opportunity to build technology that impacts financial services across emerging markets.
Application Closing Date
Not Specified.
Recruitment Process
- Introductory call with members of the hiring team – 30 mins.
- Technical interviews with members of the Engineering team – 45–60 mins.