Previous Job
Software Engineer - Automation and Data Communication
Ref No.: 18-00652
Location: Houston, Texas
Start Date: 06/14/2018

  • Systems capabilities include data acquisition from other hardware/software systems, machine control, cloud connectivity, process control and user interaction. You will be a member of a cross functional team and expected to organize, set the direction.

    Our project is stable, long-term and constantly adopts new technologies. Key project stakeholders are open for innovative ideas.
    Project is based on SCRUM methodology.
  • Responsibilities:
    • Analyzing and understanding the business processes.
    • Identifying and communicating the technical software requirements.
    • Designing automated process solutions in accordance with standard design principles and conventions.
    • Configuring new automated processes and objects using core workflow principles that are efficient, well structured, maintainable and easy to understand.
    • Creating and maintaining solution documentation.
    • Supporting existing processes and implementing change requirements as part of a structured change control process.
    • Problem solving issues that arise in day to day running of automated processes and providing timely responses and solutions as required.
    • Working within project planning constraints, communicating any identified project risks and issues to the delivery/project manager accordingly and providing inputs to the change control process.
    • Creating and documenting test procedures and scenarios for the pre-UAT phases
    • Supporting the Operational Teams during the UAT and rollout phases
  • Skills:
    • Strong software development skills, including project planning, deriving requirements from system objectives, organizing and prioritizing work, and delivering results, and providing support.
    • 4+ years' experience developing machine to machine (M2M) and electromechanical automation system software in C#, C++, C, or Java
    • 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
    • 2+ years' experience developing with MS technologies such as Visual Studio .NET, WPF, WinForms, console applications, etc.
    • 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 services
    • Experience developing with network protocols such as TCP and UDP over IP
    • Attention to detail and data driven decision making
    • Experience developing IoT and data driven systems
    • Experience in developing applications on multiple operating systems such as Windows, Unix, Linux, iOS, Mac OS, Android.
    • Experience using fieldbus protocols such as EtherCAT, SynqNet, DeviceNet, ControlNet, Modbus, Profibus, CANopen.
    • 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 PLC programming using Structured Text.
    • Experience with and understanding of the value of modern development tools such as Git, CVS, Subversion, Jenkins, NuGet, and JIRA