Baker Hughes, a GE company (NYSE: BHGE) is the world's first and only full stream provider of integrated oilfield products, services and digital solutions. Drawing on a storied heritage of invention, BHGE harnesses the passion and experience of its people to enhance productivity across the oil and gas value chain.
BHGE helps its customers acquire, transport and refine hydrocarbons more efficiently, productively and safely, with a smaller environmental footprint and at lower cost per barrel. Backed by the digital industrial strength of GE, the company deploys minds, machines and the cloud to break down silos and reduce waste and risk, applying breakthroughs from other industries to advance its own.
With operations in over 120 countries, the company's global scale, local know-how and commitment to service infuse over a century of experience with the spirit of a startup - inventing smarter ways to bring energy to the world.
Follow Baker Hughes, a GE company on Twitter @BHGECo, or visit us at BHGE.com.
Baker Hughes, a GE company, are seeking an experienced, self-driven Embedded Software Developer who can quickly come up to speed and contribute to a fast paced development team. This position involves the planning, design, implementation, documentation and maintenance of several embedded control system firmware products covering multiple generations of BHGE controls products.
Key technical requirements include Embedded HTML based UX/UI development, embedded Linux experience and strong C/C++ development skills.
Generation of product technical documents and manual addendums for product maintenance and internal support will be regularly required. Telephone and email support and interaction with other internal employees will be necessary. Travel will be relatively minimal but may be required for training and to support product troubleshooting or deployment in worldwide locations.
- Hold a 2 year Diploma or 4 year Bachelor Degree from a relevant post-secondary program
- 5+ years of experience of embedded development experience.
- Possess a strong background in real time embedded system development and control system theory
- Possess advanced software development skills, specifically in the C and C++ languages.
- Possess experience with Embedded Linux OS platform and application development
- Be able to read source code written by others and understand, modify, maintain legacy code modules
- Possess strong skills for software debugging using integrated embedded environments and debug tools
- Be familiar with proper software documentation, coding standards and high reliability development skills (TDD, Unit Testing)
- Be familiar with software source control concepts, bug tracking and workflow development systems
- Possess strong team work skills to accomplish group goals
- Possess strong written and verbal English language communication skills, required to generate technical and product documentation along with documenting software functionality and technical support.
- Familiarity with SVN, GIT, TFS tools are preferred
- Familiarity with Node.JS, Zero MQ is preferred
- Familiarity with Ethernet, WIFI, FTP, HTML & USB implementation, standards is preferred
- Familiarity with Freescale development tools(Codewarrior), Altera Development tools and Windows CE (Visual Studio) would be an asset.
- Programming experience in other languages including C#, Java or related would be an asset
- A background in Electronics theory or design would be an asset.
- Variable Speed Drive experience would be an asset.
- Familiarity with hardware design including Freescale, ARM, Altera processors would be an asset.
Key Responsibilities / Accountabilities:
- Develop 'C' and 'C++' source code modules, including corresponding unit test code
- Develop Node.js embedded server applications
- Configure, build and test Linux based embedded OS platforms such as Yocto, Ubuntu for a single board computer.
- Study Legacy 'C' and 'C++' source code modulesand understand the operation of legacy products.
- Manage and maintain bug and work item lists
- Plan, design and document new firmware functionality in a team project environment
- Research, identify and resolve issues in legacy source code.
- Work with existing source code control systems, bug trackers and source analysis applications to ensure software quality
- Complete projects within a stage-gate development process
- Generate product documentation including tech briefs, FAQ lists, product manual contribution and training documentation
- Maintain Visual Studio (C++, C#, VB.NET) based PC Applications
Baker Hughes, a GE company is an Equal Opportunity Employer. Employment decisions are made without regard to race, color, religion, national or ethnic origin, sex, sexual orientation, gender identity or expression, age, disability, protected veteran status or other characteristics protected by law. Learn more
Job Type: Full-time
- Software Development: 1 year (Preferred)