Software Developer (India)

Software Developer (India)

06 Aug
|
PlusWealth Capital Management
|
India

06 Aug

PlusWealth Capital Management

India

THINK. TECH. TRADE

Posted 2 years ago

Location – Gurgaon

We are currently seeking a skilled C++ Developer to join our dynamic team and contribute to
the development and optimization of our trading systems.

Requirements:

- Proven experience in C++ development, preferably in a low-latency or HFT environment.
- Strong understanding of raw sockets and experience with packet capture and analysis.
- Proficiency in multithreading and synchronization mechanisms in C++.
- Expertise in memory management, including the use of smart pointers and custom memory
pools.
- Knowledge of cache coherency and techniques to optimize cache performance.
- Familiarity with motherboard and CPU architecture, and how it impacts system performance.
- Experience with CPU flags and their usage in software optimization.
- Strong problem-solving skills and the ability to work in a quick-paced, high-pressure
environment.
- Excellent communication skills and the ability to work collaboratively in a team.
Preferred Qualifications:
- Experience with high-frequency trading systems and financial markets.
- Knowledge of network protocols and performance optimization techniques.
- Familiarity with profiling and benchmarking tools.

Responsibilities:

1. Raw Sockets:

- Develop and maintain software components that use raw sockets for packet capture and
analysis.
- Optimize raw socket performance to minimize packet loss and latency.

2. PCAP Analysis:

- Implement solutions for capturing and analyzing network traffic using PCAP.




- Utilize tools like libpcap and Tcpdump to filter and process specific packet types.

3. Multithreading:

- Design and implement multithreaded applications to enhance system performance and
scalability.
- Manage thread lifecycle and synchronization to ensure efficient parallel processing.

4.Cross Thread Safety:

- Ensure thread safety in shared data structures using synchronization mechanisms.
- Implement best practices for cross-thread communication and data sharing.

5.Memory Management:

- Efficiently manage dynamic memory allocation and deallocation.
- Utilize smart pointers and other C++ techniques to optimize memory usage and minimize
fragmentation.

6. Cache Coherency:

- Write cache-friendly code to optimize performance in multicore systems.
- Implement techniques to reduce cache misses and false sharing.

7. Custom Memory Pool Programming:

- Develop custom memory pools to enhance memory management efficiency.
- Integrate custom memory pools with existing code and third-party libraries.

8. Motherboard and CPU Architecture:

- Understand and leverage the key components of motherboard and CPU architecture to
optimize system performance.
- Utilize advanced CPU features like SIMD, multithreading, and out-of-order execution.

9.CPU Flags and Optimization:

- Optimize software performance using CPU flags such as SSE, AVX, and FMA.
- Profile and benchmark code to measure and improve performance based on CPU-specific
instructions.

📌 Software Developer (India)
🏢 PlusWealth Capital Management
📍 India

Reply to this offer

Impress this employer describing Your skills and abilities, fill out the form below and leave Your personal touch in the presentation letter.

Subscribe to this job alert:

Get the latest job offers by email for: software developer (india) / india

Subscribe to this job alert:

Get the latest job offers by email for: software developer (india) / india