Senior Software Engineer (C++) Job Description

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.