Employer Login | Partner Login | Candidate Login
WhatsApp Logo Chat us Call Logo Call us

Senior Software Engineer Rust OR C++ Equities

Citi Bank — Pune, PUNE

Apply Now
Experience 0-5 Years yrs
Age 21-35 yrs
Gender Both
Salary Not Disclosed LPA
Department Sales Loans
Product Loans

Job Description

Discover your future at Citi

Working at Citi is far more than just a job. A career with us means joining a team of approximately 219,000 dedicated people from around the globe. At Citi, you’ll have the opportunity to grow your career, give back to your community and make a real impact.

Job Overview

Department Overview

The Equities Technology division is responsible for building and maintaining the high-performance, ultra-low-latency trading infrastructure that powers our global equities business. This includes market data dissemination, order routing, algorithmic execution, smart order routing (SOR), and real-time risk management systems. We operate in a highly competitive environment where microseconds matter, requiring cutting-edge software engineering practices, deep hardware-software co-design, and robust system reliability.

Role Summary

We are seeking an exceptional Senior Software Engineer with deep expertise in Rust and C++ to join our Equities Low-Latency Trading Technology team.

In this role, you will design, develop, and optimize our next-generation trading systems. You will lead the strategic transition of legacy high-performance C++ components to modern Rust where safety and concurrency are paramount, while continuing to maintain and optimize critical ultra-low-latency C++ execution paths. This is a highly technical role requiring a strong understanding of computer architecture, operating systems, network protocols, and modern software engineering paradigms.

Key Responsibilities

1. System Design & Development

  • Architect, build, and maintain ultra-low-latency trading systems, including exchange connectivity gateways, market data feeds, and algorithmic execution engines using Rust and C++
  • Design clean, modular, and reusable APIs and libraries that can be leveraged across multiple trading desks.
  • Lead the strategic migration of critical trading components from C++ to Rust, leveraging Rust's memory safety and concurrency guarantees without sacrificing performance.

2. Performance Optimization

  • Profile and optimize systems to achieve sub-microsecond latencies and deterministic performance.
  • Apply low-latency techniques such as CPU pinning, cache-friendly data structures, lock-free programming, memory-mapped files, and custom memory allocators.
  • Utilize kernel bypass technologies (e.g., Solarflare OpenOnload, DPDK, EF_VI) to minimize network stack overhead.

3. Concurrency & Reliability

  • Design and implement highly concurrent, thread-safe, and lock-free algorithms to handle massive throughput with minimal jitter.
  • Implement rigorous testing methodologies, including unit testing, integration testing, property-based testing (in Rust), and high-fidelity simulation/back testing environments.
  • Ensure the high availability and operational resilience of trading systems through robust error handling and failover mechanisms.

4. Collaboration & Support

  • Work closely with quantitative researchers, traders, and product managers to translate complex trading strategies and business requirements into robust, production-ready software.
  • Build real-time telemetry, monitoring, and alerting tools to ensure operational visibility.
  • Provide level-3 escalation support for production systems during market hours.

Required Technical Skills & Qualifications

Programming Languages

  • C++: Expert-level proficiency in C++ (C++11/14/17/20), with a deep understanding of template metaprogramming, RAII, move semantics, smart pointers, and the standard library (STL).
  • Rust: Strong proficiency in Rust, including ownership/borrowing concepts, lifetimes, unsafe Rust boundaries, macro systems, and the Cargo ecosystem.

Systems Programming & Low-Latency

  • Deep understanding of Linux operating system internals (kernel tuning, memory management, virtual memory, page faults, system calls).
  • Experience with low-latency networking (TCP/IP, UDP, Multicast) and socket programming.
  • Familiarity with hardware-level concepts: CPU cache hierarchies (L1/L2/L3), TLB, branch prediction, and memory barriers.

Concurrency

  • Proven experience in multi-threaded programming, memory models (sequential consistency, acquire-release), and lock-free data structures.

Equities Domain Knowledge

  • Solid understanding of Equities market structure, order types, exchange protocols (FIX, OUCH, ITCH), and trading lifecycles.

Tools & Infrastructure

  • Experience with profiling and debugging tools (gdb, valgrind, perf, VTune, heaptrack).
  • Proficiency with build systems (CMake, Cargo) and CI/CD pipelines (Git, Jenkins/GitHub Actions).

Preferred Qualifications

  • Experience with FPGA integration or hardware acceleration.
  • Experience with kernel bypass technologies (Solarflare EF_VI, OpenOnload, DPDK).
  • Knowledge of market-making, smart order routing (SOR), or statistical arbitrage execution strategies.
  • Bachelor’s or Master’s degree in Computer Science, Computer Engineering, or a related quantitative field.

Core Competencies

  • Analytical Thinking: Strong problem-solving skills with the ability to analyze complex systems and identify performance bottlenecks.
  • Collaboration: Excellent communication skills with the ability to work effectively in a fast-paced, cross-functional team environment.
  • Adaptability: Eagerness to learn new technologies and adapt to evolving business requirements and market conditions.
  • Quality Focus: Commitment to writing clean, well-documented, and thoroughly tested code.

------------------------------------------------------

Job Family Group:

Technology

------------------------------------------------------

Job Family:

Applications Development

------------------------------------------------------

Time Type:

Full time

------------------------------------------------------

Most Relevant Skills

Please see the requirements listed above.

------------------------------------------------------

Other Relevant Skills

For complementary skills, please see above and/or contact the recruiter.

------------------------------------------------------

Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.

If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.

View Citi’s EEO Policy Statement and the Know Your Rights poster.

Frequently Asked Questions

What are the eligibility criteria for the Senior Software Engineer Rust OR C++ Equities job at Citi Bank?

Eligibility typically includes the qualifications and experience outlined in the job description above, with around 0-5 Years years of relevant experience expected for this role.

What are the primary responsibilities of a Senior Software Engineer Rust OR C++ Equities at Citi Bank?

The key responsibilities for this role are detailed in the Key Responsibilities section above, covering the core duties expected of a Senior Software Engineer Rust OR C++ Equities at Citi Bank.

Is prior experience required for this position?

This role requires around 0-5 Years years of relevant experience, as specified in the job listing. Please refer to the Qualifications & Experience section above for full details.

What skills are important for this role?

Skills relevant to this position are outlined in the Qualifications & Experience section above. In general, strong communication, domain knowledge, and the ability to meet role-specific targets are valued across similar BFSI positions.

How do I apply for the Senior Software Engineer Rust OR C++ Equities role at Citi Bank?

You can apply directly using the Apply Now button on this page, which will take you to Citi Bank's application process for this role.