Senior Software Engineer (C++) Job Description Template
Our company is looking for a Senior Software Engineer (C++) to join our team.
Responsibilities:
- Collaborating with subject matter experts and development support staff throughout all phases of the software development lifecycle;
- Pursuing excellence in all things;
- Solving extremely challenging software design problems efficiently and effectively;
- Improving our customers’ quality of life with creative workflows and tools.
Requirements:
- Pursuing excellence in all things;
- Knowledge of data structures and algorithms a must;
- Experience with MATLAB, Simulink or other block diagram modeling, simulation and code generation tools is a big plus;
- Experience in graph analysis or numerical computation;
- Strong abstraction, algorithmic, and software architecture skills;
- Experience with UML, Design Patterns, and STL or Boost libraries is a plus;
- Experience with compiler implementation and optimization;
- Experience in parallel language constructs or parallelization techniques;
- Demonstrated ability to dive into and work with large code bases;
- Improving our customers’ quality of life with creative workflows and tools;
- Excellent analytical and problem solving skills;
- Advanced C++ programming skills;
- Understanding of TDD practices and experience with Unit Testing (cppunit, gtest, catch or similar);
- Very good knowledge of STL, C++ 11/14/17 features, Boost libraries, and Design Patterns;
- Ability to run and debug complex C++ routines and programs.