Job Description
We are searching for a professional software engineer to collaborate with our fantastic software development team on projects that our company is actively developing. Duties will include, but are not limited to, creating and leading software system validation and testing methodologies, as well as overseeing our software programming projects. You will also collaborate extensively with clients and cross-functional teams to provide project updates and proposals.
Software engineers create, build, and test software applications for computers using engineering, mathematical, and computer science ideas and methodologies.
Responsibilities
Excellent command over programming languages C, C++.
Excellent Control over Operating systems principles (Linux, VxWorks, QNX)
Experience in programming in a multi-thread/multi-process environment
Proficiency with Linux, Jira and Inter-process communication
Design and implement tools to accelerate software system development and debug environments
Participate and support in fixing issues arising from customer sites
Analyze system scalability, interworking issues and perform root cause analysis of system issues
Design and implement built-in diagnostics and test codes to help reliability and supportability
Experience of development of distributed architecture systems with intercommunication.
Communication over various physical layer devices like Serial, Ethernet, 1553, CAN, NMEA, ModBus, etc
Knowledge of IP protocols, VLANs and Ethernet switching
Hands-on software development experience in large complex software systems
Excellent analytical, integration and debugging skills are necessary
Very Good oral and written communication and multitasking skills are expected


