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.
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.
Recruitment Process:
Introductory call with members of the hiring team - 30 mins.
Technical interviews with members of the Engineering team - 45 - 60 mins.