Thales

Software Architect

Thales
Aerospace & DefenseSingaporeFull-time1 months ago

About the role

AI summarised

Software Architect at Thales responsible for designing and leading the architecture of large-scale, event-driven platforms using Apache Kafka, REST, and Kubernetes. The role involves defining system architecture, ensuring scalability and resilience, providing technical leadership, and collaborating with engineering and business stakeholders to deliver mission-critical capabilities in aerospace, cybersecurity, and digital identity domains.

Aerospace & DefenseFull-timeGeneral

Key Responsibilities

  • Define the end-to-end architecture of distributed systems that combine Kafka (asynchronous event streaming) with REST-based SOA (synchronous service communication).
  • Establish service interaction models, including API-first design, event-driven patterns, and microservices boundaries
  • Design fault-tolerant, elastic, and observable architectures with strong SLAs/SLOs for throughput and latency.
  • Ensure designs align with microservices, domain-driven design (DDD), and event-sourcing/CQRS principles.
  • Drive API-first design and interoperability across heterogeneous systems.
  • Deploy and manage Kafka clusters for high-volume, high-throughput messaging pipelines.
  • Architect REST-based APIs with OpenAPI/Swagger standards for discoverability and interoperability.
  • Implement service orchestration and composition patterns to connect REST services with Kafka streams.
  • Ensure cloud-native deployment of services on Kubernetes, leveraging Helm, Operators, and GitOps pipelines (ArgoCD, Flux).
  • Define SLOs, RPOs to measure the levels of resiliency and robustness in the architecture.
  • Define scaling strategies for both Kafka and REST-based services to meet throughput and latency SLAs.
  • Implement resilient service-to-service communication (circuit breakers, retries, idempotency, API gateways).

Requirements

  • Bachelors in Computer Science or Information Technology.
  • Masters degree in Computer Science or Data Science.
  • 8+ years in software engineering/architecture, with 3+ years designing large-scale distributed systems.
  • Strong understanding of CAP theorem, Leadership Election strategies (e.g., Quorum), Data replication strategies, Data Partition Strategies.
  • Deep expertise in Apache Kafka (topics, partitions, replication, Connect, Streams, ksqlDB).
  • Strong knowledge of REST-based service-oriented architectures, including API-first design, documentation, and governance
  • Hands-on experience deploying and operating workloads on Kubernetes (Helm, Operators, CRDs).
  • Proficiency in Java/Kotlin (preferred), with experience in REST API frameworks (e.g., Spring Boot).
  • Strong foundation in system design