Software Engineer
Trimble Navigation Limited - Dayton, OH

This job posting is no longer available on Trimble Navigation Limited. Find similar jobs:Software Engineer jobs - Trimble Navigation jobs

The successful candidate will reside in Dayton Ohio, and work as a member of a global team, primarily contributing to the design, development and testing of Trimble’s Grade and Paving Control System product lines for earth moving construction and paving equipment (GCS900 and PCS900).

Primary Duties:
·

Performs software engineering within the process framework established for the project. This framework describes how requirements are developed and analysed, how changes are made to requirements, how engineering work is planned and tracked, how testing is performed, and the criteria by which the performance of the project is measured. Contributes to the continuous improvement of these processes.

·

Working with, and on, construction and paving earth moving equipment to test and validate software in a user environment.

·

Develops firmware for embedded targets, used in machine control and guidance applications, and software for manufacturing end of line test/calibration fixtures.

·

Works with the project team, with the application domain experts (e.g., application engineers, technical marketing) and possibly with the customers, to establish achievable requirements.

·

Works with the project team to identify/clarify project goals, establish useful milestones, and develop a breakdown of the engineering tasks to be performed. During the development process, develops engineering effort/schedule estimates to support overall project scheduling, project tracking, and change control decisions.

·

Creates software designs, and implements and tests those designs to meet established requirements.

·

Participates in technical/design reviews as required by the project framework.

·

Maintains and archives design documents, source code, and other work products necessary for the project.

·

As necessary, works independently or with quality assurance personnel to plan and execute product testing.

·

As necessary, performs or enables the on-going support of software through the creation of design documentation or the performance of defect isolation and resolution.

·

Works with the author of product documentation to assist in the development and review of product documentation.

·

As necessary, provides engineering work products and documentation to manufacturing and document control as necessary for successful product release.

·

Other duties as required and requested by management.

Key Organizational Interfaces:
Electrical Engineering Manager (or similar functions). The software engineer must have a strong working relationship with the electrical engineering manager. He/she must possess a thorough understanding of the electrical design, and be able to collaboratively design firmware and software to meet the engineering design goals.

Product Management (or similar functions). The software engineer must have a strong working relationship with the product manager. He/she must possess a thorough understanding of the product requirements and engineering deliverables yet have the ability to set appropriate technical limits. The software engineer works with the product manager to prioritize cases and isolate root causes for problem reports. The relationship is team based and highly dependent on strong problem solving skills. The software engineer establishes objectives, assists in creation of a breakdown of engineering tasks, creates task effort estimates, negotiates design interfaces and reviews design issues, and provides status updates to the project manager or program manager to ensure that product specifications and timetables are met.

Application Engineers (or similar functions). The software engineers work with the application engineers as appropriate to garner a complete understanding of what the customer values. He/she works with individual application engineers as necessary to perform validation that engineering work products meet requirements, or to identify what must be corrected.

Quality Assurance Engineers (or similar functions). Assists in the preparation and execution of test plans. Performs corrective action as necessary as determined by quality assurance testing.

Essential Characteristics / Skills:
·

Must possess effective analytical and problem-solving skills.

·

Must be capable of both working independently and in a team-based environment.

·

Must be able to communicate clearly, both verbally and in writing.

·

Must be able to identify, manage and communicate risk.

·

Willingness to positively evaluate alternative solutions for solving problems.

·

Must be capable of interpreting data sheets and circuit schematics for device driver development.

·

Effective in both software design, implementation, an debugging.

·

Good C/C++ programming skills.

·

Experience with embedded RTOSs.

·

Experience writing pre-emptive multi-task firmware.

·

Strong linear algebra and geometry math skills.

·

Experience of the complete software development lifecycle.

Desirable Characteristics / Skills:
·

Experience of machine guidance applications for construction and/or mining.

·

Experience with Survey/positioning applications.

·

Experience with WinCE.

·

Signal processing and digital filter design experience.

·

Familiar with the principles of IP programming, e.g. TCP, UDP, FTP, etc.

·

Familiar with J1939 CAN.

Education / Experience:
·

Five years minimum software development/engineering experience.

·

Bachelor’s degree in Software or Electrical Engineering, or related fields.

About this company
8 reviews