Software Engineer

Baker Hughes   •  

Billerica, MA

Industry: Professional, Scientific & Technical Services


Less than 5 years

Posted 34 days ago

Role Summary/Purpose

The Software Engineer will develop, design and implement software for data acquisition and analysis from industrial flow, gas and moisture measurement and sensing systems.

Essential Responsibilities

  • Develop web-based and desktop applications for remote data collection and analysis from online sensors, analyzers and process control systems
  • Capture system level requirements by brainstorming with team leader and product manager
  • Analyze requirements and recommend solutions through architecture discussions
  • Document the initial design, seek feedback and defend the design by showing value and usage
  • Engage in technical discussions; participate in technical designs and present technical ideas through white boarding
  • Pro-actively manage your own work and provide updates in a written format when appropriate
  • Seek and provide feedback on code
  • Contribute in brainstorming sessions to realize a specific product module from scratch
  • Support coding style guidelines during implementation and contribute to architecture enhancement


  • Bachelor’s Degree in Computer Science, Electrical Engineering and/or Computer Engineering from an accredited college or university
  • Minimum 2 years of software development experience

Desired Characteristics

  • Proficient in a POSIX-compliant embedded operating system (QNX experience preferred)
  • Proficient in front-end Web/UI development with HTML/CSS, bespoke JavaScript, targeting major browsers
  • Familiar with back-end Web development in C/C++, CGI on Apache in an embedded, resource-constrained environment
  • Familiar with JSON parsing and interfacing to C/C++ application.
  • Experience with serial communications and protocols including I2C, SPI, RS232, RS485, Modbus, and CAN bus implementations
  • Experience with Ethernet, TCP/IP, socket programming
  • Critical thinking, problem-solving, trouble shooting and decision-making skills
  • Familiar with system level architecture, software development processes including Waterfall and Agile methods
  • Willingness to produce code conforming to business-prescribed guidelines, while practicing and promoting best software practices of version control, documentation and defect tracking
  • Ability to communicate effectively across the design team, conduct and participate in team code review
  • Standard office abilities, e.g. web, word processing and electronic spreadsheet / presentation skills