Principal Software Engineer Distributed Systems (Singapore / China)
Principal engineer at Standard Chartered designing and building highly scalable, resilient distributed backend services for critical, high-throughput banking transaction processing, using Go or Java; experience with durable execution platforms like Temporal is a strong bonus. Role is based in Singapore or China.
- Compensation
- Not disclosed
- Location
- Not listed
- Work setup
- Not specified
- Seniority
- Principal
- Employment
- Not specified
- Experience
- 10+ years
- Category
- Software engineering
- Posted
Skills
Must have
- 10+ years' software engineering experience with hands-on Go or Java
- Proven experience designing and building distributed systems or high-availability backend services
- Strong software architecture experience designing scalable, resilient, maintainable systems
- Solid knowledge of software design patterns and real-world application
- Solid understanding of concurrency, service-to-service communication, and failure handling
- Experience with high-throughput, low-latency, and resilient system design
- Familiarity with transactional consistency, idempotency, retries, and recovery patterns
- Experience in environments with strict reliability, observability, and operational requirements
- Strong critical thinking and problem-solving skills
- Self-driven, curious, optimistic with a strong can-do attitude
- Good communication skills and collaborative engineering mindset
- Bachelor's or Master's degree in Computer Science, Engineering, or related field, or equivalent practical experience
Nice to have
- Experience on critical financial or transaction-intensive systems
- Experience with durable execution frameworks such as Temporal or DBOS
- Familiarity with AI-assisted development tools and workflows
- Experience with AI hardening design for safe, controlled use of AI in engineering
Full description
Job SummaryThis role could be based in Singapore or China. When you start the application process you will be presented with a drop-down menu showing all countries, please ensure that you only select a country where the role is based
The Software Engineer - Distributed Systems designs, builds, and supports highly scalable, resilient, and secure services for critical transaction processing environments. The role focuses on solving complex engineering problems across service orchestration, data consistency, failure recovery, observability, and performance at scale, delivering robust, high-throughput, low-latency critical banking systems. The engineer will be part of a high-performing team focused on engineering excellence and delivery quality. Experience with Go or Java is required. Experience with durable execution platforms such as Temporal, DBOS, or similar frameworks is a strong bonus.
Key ResponsibilitiesStrategy
- Help shape the engineering direction for critical, high-availability distributed systems.
- Contribute to long-term thinking around scalability, resilience, maintainability, and platform evolution.
- Identify opportunities to simplify complex workflows, reduce operational risk, and improve delivery speed.
- Support adoption of better engineering practices, including automation, reusable patterns, and AI-assisted development where it adds value.
- Think beyond immediate implementation to ensure solutions are robust, future-ready, and aligned with evolving business needs.
- Bring structured problem-solving and strong critical thinking to ambiguous technical challenges.
- Promote engineering excellence, code quality, and operational discipline.
- Contribute to documentation, technical reviews, and continuous improvement activities.
- Undertake additional responsibilities as assigned within the scope of the role.
- Apply secure engineering practices in line with internal governance and compliance expectations.
- Build solutions that support integrity, reliability, traceability, and controlled operational behaviour.
Business
- Design and build distributed backend services for high-volume transaction processing.
- Develop scalable, fault-tolerant solutions for transaction-heavy systems.
- Implement resilient integration patterns across APIs, queues, streaming platforms, and internal services.
- Build strong validation, integrity, idempotency, and recovery mechanisms to support safe and consistent processing.
- Deliver solutions that improve availability, consistency, and operational resilience.
- Translate business and operational needs into well-structured technical implementations.
##
People & Talent
- Collaborate effectively with engineering peers and contribute to a positive, high-performance team culture.