- Company Name
- Endava
- Job Title
- C++ Senior Developer
- Job Description
-
**Job Title**
C++ Senior Developer
**Role Summary**
Senior C++ developer responsible for designing, implementing, and maintaining high‑performance trading applications for Fixed Income Securities and Securities Lending/Financing. Works in a Linux environment, delivers clean, production‑grade code, and collaborates with DevOps pipelines and distributed architecture teams.
**Expectations**
- Produce dependable, well‑documented C++ code that meets production standards.
- Own full SDLC cycle: requirements, design, coding, testing, deployment, and support.
- Demonstrate strong ownership of performance, scalability, and reliability in trading systems.
**Key Responsibilities**
1. Design, develop, and extend trading and booking applications using modern C++.
2. Enhance existing codebases and integrated interfaces (XML, JSON, Service Bus).
3. Write unit, integration, and performance tests; support automated testing pipelines.
4. Participate in DevOps, CI/CD processes (Maven, Jenkins, Git, Nexus).
5. Implement, refactor, and maintain micro‑service and server‑client components.
6. Debug, performance‑profile, and optimize multithreaded C++ code.
7. Work collaboratively in cross‑functional teams (QA, DBA, Ops).
8. Stay current with C++ standards (C++11‑20) and Linux tooling.
9. Contribute to design documentation and knowledge sharing.
**Required Skills**
- Expertise in C++11, C++14, C++17, C++20, modern C++ idioms, STL, and Boost.
- Proficiency with shared pointers, multithreading, high‑performance computing, and makefiles.
- Strong Linux (Ubuntu/RedHat) experience, shell scripting, and g++ toolchain.
- Familiarity with debugging tools (gdb, certified).
- Knowledge of design patterns, clean code principles, and SOLID.
- Experience with CI/CD (Jenkins, Maven, Git, Nexus), DevOps practices.
- Distributed systems knowledge, client‑server, micro‑service architecture.
- SQL, relational databases, queues, PL/SQL stored procedures.
- Server‑side development (non‑GUI), XML/JSON processing, enterprise messaging.
- Good understanding of financial trading systems and fixed‑income instruments is a plus.
- Ability to use GitHub Copilot and automate unit/integration tests is desirable.
- Agile methodology familiarity, Python knowledge, and experience with CI pipelines are advantages.
**Required Education & Certifications**
- Bachelor’s degree in Computer Science, Software Engineering, or equivalent technical background.
- Relevant certifications (e.g., OOP, Linux, SQL) preferred but not mandatory.