Senior Software Engineer

Job Description:

We are looking for a highly skilled Senior C++ Developer to join our team and take part in the development and maintenance of complex real-time simulation systems and 3D environments. The ideal candidate will have strong experience in C++ programming, with a focus on performance optimization, multi-threaded systems, and 3D graphics. This role will involve working on the creation and optimization of simulation environments that demand high levels of accuracy and real-time performance.


If you are passionate about working on cutting-edge simulation systems and have expertise in developing high-performance, real-time software, we want to hear from you.


Responsibilities:


 • Design, develop, and maintain complex real-time simulation software with a focus on performance and accuracy.

 • Write efficient and clean C++ code that follows modern best practices and ensures scalability.

 • Optimize 3D simulations, focusing on rendering performance and real-time responsiveness.

 • Implement and manage multi-threaded processes to ensure smooth performance under heavy workloads.

 • Handle complex memory management tasks, ensuring efficient use of system resources.

 • Collaborate with cross-functional teams to integrate simulation components into larger systems.

 • Analyze, debug, and resolve performance bottlenecks in simulation environments.

 • Work with data structures and algorithms to improve efficiency in large-scale simulations.

 • Use mathematical modeling, particularly in linear algebra and geometry, to simulate real-world environments and interactions.


Required Skills and Qualifications:


 • 5+ years of professional experience in C++ development with a strong understanding of modern C++ standards (C++11/14/17/20).

 • Deep understanding of Object-Oriented Programming (OOP) principles and design patterns.

 • Experience in real-time systems and handling multi-threaded applications.

 • Strong knowledge of 3D graphics programming using libraries such as OpenGL, DirectX, or similar.

 • Proficiency in memory management, including pointers, smart pointers, and resource optimization.

 • Strong understanding of data structures, algorithms, and their optimization in performance-critical applications.

 • Experience in implementing physics simulations or managing complex 3D interactions.

 • Solid mathematical skills, especially in linear algebra, geometry, and transformations.

 • Proficiency in using tools for debugging, profiling, and performance analysis (e.g., gdb, Valgrind).

 • Experience with network programming (TCP/UDP) is a plus, especially in distributed systems or simulations.

 • Excellent problem-solving skills and the ability to work independently as well as in a team environment.

 • Strong communication skills, both written and verbal, with fluency in English.


Preferred Qualifications:


 • Experience with Boost, Qt, or other C++ frameworks.

 • Familiarity with real-time simulation environments or 3D visualization systems.

 • Experience working in both Linux and Windows development environments.

 • Knowledge of advanced optimization techniques for large-scale simulations and 3D rendering.


Post date: Today
Publisher: LinkedIn
Post date: Today
Publisher: LinkedIn