ResponsibilitiesCandidate will participate in a team of  C++ developers to create re-usable software components running in the QNX Operating System. A candidate must be able to quickly understand the application requirements and make smart decisions about the best solution to a problem.  Candidates must be able to collaborate with the team to create simple and supportable designs as well as participate in implementing designs. Candidate must be able to create accurate estimates of the time involved to finish tasks based on his own knowledge skills and abilities. Candidate must be able to write software that adheres to coding standards and is supportable as well as performance. Required Experience and Skills·       5+ Years’ Experience in C++, C# or Similar  C like  language·       Demonstrated ability to document and communicate designs/intentions using visual design methodologies·       Demonstrated ability to solve software problems via decomposition·       Demonstrated ability to work in multi-threaded applications·       Proficient with Object Oriented Design Concepts·       Familiar with Design Patterns·       Experience creating complex but efficient object-oriented designs·       Experience creating modular/reusable components·       Experience working in low memory environments ·       Experience working in a test driven methodology Additional Useful Experience·       Experience coding for the QNX Operating System·       Experience with Engine Management and Vehicle systems (J1939, CAN)·       Experience working in an Agile/Scrum Software Development team·       Experience in OpenGL,  OpenVG, or other Low-Level drawing systems·       Experience leading Scrum teams