Capgemini

Senior Software Engineer / Technical Lead (C++ Middleware & Interfaces)

Capgemini
Apply
1 day ago
Singapore, SingaporeStaff+

Responsibilities

  • Lead the design, development, integration, and verification of customized C++ middleware and software interfaces.
  • Coordinate software tasks, priorities, estimates, risks, delivery milestones, and technical communication as the software work-package focal point.
  • Translate customer and system requirements into software architecture, requirements, acceptance criteria, interface specifications, and technical documentation.
  • Design and implement components for inter-system communication, data translation, protocol conversion, message routing, error handling, logging, configuration, and service lifecycle management.
  • Establish software engineering practices including coding standards, branching strategy, code reviews, build management, unit testing, static analysis, and version control.
  • Plan and supervise a Junior Software Engineer’s work, provide technical guidance, conduct code reviews, and support capability development.
  • Define and execute unit, integration, system, and acceptance testing; investigate defects and support root-cause analysis.
  • Support installation, deployment, commissioning, customer demonstrations, site integration, and post-delivery defect resolution.
  • Identify and mitigate technical, schedule, cybersecurity, obsolescence, and integration risks.

Requirements

  • Degree in Computer Science, Computer Engineering, Electrical/Electronic Engineering, or a related technical discipline.
  • At least 5 years of professional software-development experience, including substantial C++ experience.
  • Production-quality C++ experience with distributed, embedded, industrial, maritime, defence, communications, automation, or other integration-heavy systems.
  • Experience designing middleware, software interfaces, communications gateways, protocol adapters, or data-integration solutions.
  • Strong understanding of modern C++ principles and practices.
  • Experience with Linux-based development, Git, software debugging, profiling, automated testing, and defect investigation.
  • Ability to interpret interface-control documents, protocol specifications, data dictionaries, and system requirements.
  • Strong written and verbal communication skills and the ability to produce technical documentation and work with customers and multidisciplinary teams.
  • Preferred experience with TCP/IP, UDP, multicast, serial communications, REST APIs, RPC, publish-subscribe architectures, or message-oriented middleware.
  • Preferred experience with JSON, XML, YAML, CSV, Protocol Buffers, ASN.1, or binary message formats.
  • Preferred experience with CMake, Make, Conan, vcpkg, Docker, automated build and test environments, and cybersecurity practices for software and networked systems.
  • Experience in regulated, safety-critical, high-availability, maritime, defence, industrial, or customer-acceptance environments and prior technical leadership or mentoring experience are preferred.

Benefits

  • Flexible work practices.
  • 40 hours of self-development annually with a broad selection of learning opportunities.
  • Opportunities to work on challenging projects alongside experienced and inspiring colleagues.
  • Diversity and inclusion, digital inclusion, community volunteering, and environmental sustainability initiatives.

Tech Stack

Categories

Capgemini

About Capgemini

10,000+ employees

Capgemini is a global IT services and consulting firm that delivers strategy, cloud, AI, software engineering, and managed services to large enterprises and public-sector clients. Founded in 1967 and headquartered in Paris, it is publicly traded on Euronext Paris and operates in 50+ countries. The group expanded its engineering capabilities by acquiring Altran in 2020, now operating as Capgemini Engineering.

Contact me