Your responsibilities will include requirements, design, development, test, and support of our research control software systems. Systems capabilities include data acquisition from other hardware/software systems, machine control, cloud connectivity, process control and user interaction. You will also be looked upon to be a technical leader and mentor to junior engineers. You will be a member of a cross functional team, expected to set technical direction and organize how tasks fit into the overall project.
This position requires a bachelor’s degree in computer engineering, computer science, electrical engineering, mechanical engineering or related discipline with 4+ years of demonstrable experience owning the development of automated/control systems.
Required Skills:
• Strong software development skills
• Ability to drive software development in all phases of the product lifecycle as part of a small multi-disciplined engineering team.
This includes project planning, deriving requirements from system objectives, organizing and prioritizing work, delivering results, and providing support.
• 4+ years' experience developing machine to machine (M2M) and electromechanical automation system software in C#, C++, C, or Python
•4+ years' experience developing multi-threaded/process applications/services and the common constructs and patterns associated with them.
• Excellent system (software and hardware) troubleshooting and debugging skills
• Experience with and an understanding of the value of modern development concepts and practices including OO principles, unit testing, agile development, TDD and continuous delivery
• Experience developing networked systems that communicate with data generating devices and data aggregation and transformation services
• Experience developing with network protocols such as TCP/UDP, MQTT • Attention to detail and data driven decision making
• Experience with software projects that cross multiple team/company boundaries
• Experience in developing applications on multiple operating systems such as Windows, Linux, iOS, Mac OS, Android. Preferred Skills: • Experience developing IoT and data driven systems.
• 4+ years' experience developing with MS technologies such as Visual Studio .NET, WPF, WinForms, console applications, etc.
• Experience using serial communication standards such as RS422, RS485, and RS232
• Experience developing data-driven systems using relational and/or NoSQL database technologies such as Oracle, SQLite, PostgreSQL, SQL Server, MongoDB, Cassandra
• Experience with and understanding of the value of modern development tools such as Git, CVS, Subversion, Jenkins, NuGet, JIRA, Aha, and Azure DevOps
Â