Principal Software Engineer – Ruby on Rails
Developer/Designer
Cape Town – Western Cape – South Africa
We are seeking a Principal Software Engineer to work within a Canadian-based FinTech client’s Agile Product team. You will have a direct hand in designing and implementing the core infrastructure of the platform. You’ll apply your deep technical expertise to architect fault-tolerant, highly secure, and scalable solutions that meet the evolving needs of the customers – and the growing ambitions of the business. You must live and work in South Africa.
10+ years of software development experience, including building, running, and scaling distributed systems in fast-paced environments. Experience building financial ledgers, payment systems, or other financial services applications, with a strong understanding of regulatory and compliance considerations. A track record of architecting data-intensive, highly concurrent web applications with strict consistency requirements. Expertise in designing fault-tolerant systems, applying best practices for high availability, and understanding trade-offs at scale.
Type: 12-month Contract (Rolling)
Rate: R80 000 – R150 000 Depending on experience
Area: Remote within South Africa
Responsibilities
- Architect & Design: Design and implement complex systems that meet high standards for fault-tolerance, scalability, security, and performance – all while aligning with strategic business objectives.
- Money Movement: Build systems that facilitate secure and efficient cross-border money movement, integrating with payment rails, banks, and third-party providers.
- Compliance, Stability and Security: Ensure systems comply with relevant financial regulations and implement industry-best security practices. Implement rigorous testing, robust monitoring, and proactive troubleshooting to ensure the stability, reliability, and performance of our systems.
- Incident Management: Own the resolution of complex technical issues related to ledger and payment systems, ensuring minimal disruption
- Mentor & Guide: Lead by example and provide mentorship to engineers across the organization. Encourage knowledge-sharing, uphold high standards of technical excellence, and foster a growth mindset within the team.
- Collaborate Cross-Functionally: Partner with product managers and stakeholders to define technical requirements, set architectural strategies, and develop delivery plans that balance innovation and predictability.
- Own the Full Lifecycle: Drive end-to-end development – from initial concept and design through to deployment, maintenance, and iterative improvement. Develop and refine APIs, backend services, and integrations required to maintain and launch new features.
- Evaluate & Evolve Technology: Assess emerging technologies, tools, and frameworks to continually enhance our stack, drive innovation, and increase efficiency.
- Lead Technical Decisions: Participate in code reviews, guide architectural decisions, and act as a key contributor to technical discussions that shape our engineering direction.
Requirements
- Extensive Experience: 10+ years of software development experience, including building, running, and scaling distributed systems in fast-paced environments.
- Financial Domain Expertise: Experience building financial ledgers, payment systems, or other financial services applications, with a strong understanding of regulatory and compliance considerations.
- Technical Depth: A track record of architecting data-intensive, highly concurrent web applications with strict consistency requirements.
- Fault-Tolerance & Resilience: Expertise in designing fault-tolerant systems, applying best practices for high availability, and understanding trade-offs at scale.
- Operational Acumen: Demonstrated ability to operate and improve large-scale distributed web services.
- Cross-Functional Collaboration: Proven skill in working with stakeholders to navigate ambiguity, define requirements, and produce robust, scalable designs.
- Adaptability & Curiosity: A willingness to learn new technologies, explore new approaches, and adapt as we evolve and grow.
- Ability to work remotely with your own equipment.
- Willingness to overlap work hours until 12:00-13:00 EST (negotiable).
It’s a Bonus if You Have
- Security Engineering Skills: Familiarity with web application security best practices, secure coding principles, and threat modeling, especially in the context of financial transactions.
- Accounting & Reporting Knowledge: Exposure to financial reporting standards, accounting principles, and the nuances of managing financial data at scale.
What’s in it for you?
- We live our values – we offer a transparent work environment with a high degree of trust and open communication.
- Own what you develop – our team takes pride in their work and owns the software they release
- A better process – we use modern tools and processes that optimize for developer happiness
- Write software that makes a difference – we’re building products that help businesses grow
- Small and mighty – our engineering team is small which means you can build meaningful relationships but also work on a wide variety of technologies and challenges
Our Tech Stack
- Language/Framework
- Ruby on Rails for our Backend API & Internal Team Admin
- React (JavaScript and TypeScript) for our Customer Facing Application
- Django for our underwriting module
- Database
- Postgres
- Server
- Backend is hosted in Heroku
- Front-end on Netlify
- Underwriting module on AWS
If you’re a highly skilled Principal Software Engineer – Ruby on Rails looking for an exciting remote opportunity with a dynamic fintech team, apply now!