C/C++ Developer
Job Description:
Our teams are growing, and we are looking for a C/C++ Software Engineer who will work closely with colleagues across the organization to define and refine detailed software requirements.
Main Responsibilities:
- Implementation, testing, and integration of customer requirements for the world's leading provider of lithography systems;
- Debugging and fixing problems in the existing code;
- Developing with consideration for the desired Software Architecture;
- Planning and documenting the implementation
- Ensuring delivery on time;
- Ensuring up-to-date and high-quality documentation;
- Working in an agile development environment with daily stand-up meetings and client communication.
- Responsibility and ownership over Sprint goals and keeping the code quality intact.
- Mentoring junior-level developers.
Experience:
- 3+ years of hands-on experience in programming in C/C++ in a business environment;
- Strong understanding of: data structures and algorithms, memory management and pointers and object-oriented programming principles;
- Experience with multi-threading and concurrency;
- Experience with debugging tools (e.g., GDB, Valgrind) and Version control systems (Git);
- Familiarity with Linux/Unix environments;
- Familiarity with software development lifecycle and agile methodologies;
- Excellent English level (both written and verbal).
Nice to have:
- Familiarity with build systems (CMake, Make);
- Exposure to scripting languages (Python);
- Background in numerical computing, signal processing, or scientific computing;
- Experience with cross-platform development;
- Knowledge of modern C++ standards (C++11/14/17/20);
- Familiarity with CI/CD pipelines and automated testing frameworks.
Required Skills:
C++