Software Developer II

Responsibilities:

• Implement middleware for intelligent environment devices, mainly within a Linux environment as well as for Predix Machine.

• Capture system level requirements by brainstorming with Sr. Architects, Data Scientists, and Businesses & Product Managers.

• Execute in a fast pace delivery mode and focus in delivering tasks to meet the product release goal.

• Be responsible for the design, development and testing of multiple software modules.

• Ensure implementation meets design objectives.

• Investigate and evaluate new technologies.

• Establish yourself as a thought leader across the software organization related to edge-device and real-time software design and coding principals interfacing to cloud computing architectures.

• Collaborate with other software developers in the team to implement software that align and extend platforms and systems for industrial internet.

• Join a high-performing Agile team adept in the ways of scrum and test driven development.

Qualifications:

• BS in Computer Science, Electrical Engineering, or Computer Engineering.

• Minimum of 2 years software development experience.

• Networked Appliance Solutions experience, Strong knowledge of UDP, TCP and IP v4/6 specification.

• Experience in Object Oriented Design and Programming in Java and C++.

• Expert understanding of multi-threaded priority based systems.

• Multiprocessor/Multi-OS solutions experience.

• Experience in web services (REST, SOAP, WSDL etc.),using Apache Commons Suite & Maven.

• Experience with usage of Network/Packet Processor technologies.

• Experience in Socket programming.

• Experience with device management and control.

• Must be bilingual.Skills Requirement:

• Experience with MQTT messaging protocol.

• Experience in implementing Java OSGi modules and using an OSGi container.

• Experience with embedded OS development, kernel and device drivers.

• Experience with GIT software version control system.

• Experience with Agile management tools.

• Experience in designing with UML.

• Custom Platform Tool Chain and Build System experience desired.

• Knowledge of security/access control, scalability, high availability, concurrency, online diagnoses, deployment, upgrade/migration,internationalization, production support and other SaaS enterprise software issues.

Similar jobs