Performs complex assignments as a high-level individual contributor, developing new or improved products and/or processes. Assess feasibility and soundness of design concepts and proposed implementations. Develop complex components or complete products with minimum supervision. Coordinate activities with other engineers and organizations as required to meet project objectives.
- Bachelor of Science degree in Computer Science, Software Engineering, Electrical Engineering or related technical degree
- Minimum of 5 to 7 years of experience with proven technical and professional skills in software design, development, and testing
- Designing and developing Applications on various platforms including Windows, Android, iOS
- Develop solutions that leverages multithreading, concurrency, event handling and synchronization
- Strong understanding of software design patterns, object oriented programming, functional programming concepts, and software architecture.
- Ability to travel to customer locations as needed
- Collaboration skills showing ability to learn from and share knowledge with co-workers in a fast-paced environment
- High level of integrity, ability to deal with ambiguity, take initiative/self-directed
- Experience with 3+ years of C/C++ development
- Experience with 3+ years of .Net development
- Experience with SVN, GIT/source code management, CI/CD development
- Experience with embedded system development
- Experience with agile methodologies.
- Consistent demonstration of innovative thinking
- Understanding of OS Abstracted code development
- Design and Develop apps, services for transferring data using different protocols.
- Knowledge and experience with CAN/J1939/ISO15765/OBDII protocol