Software Engineer IV - Inogen
Plano, TX 75074
About the Job
Job Summary:
The primary responsibility of the Software Engineer is to design, release, and maintain software to support the manufacturing of Inogen’s respiratory medical devices. The Software Engineer is a key member of the Engineering team and participates in all product development phases. Key responsibilities include the design, implementation, testing, and modifying of Software components, software applications, components in a Digital Health ecosystem, and all related documentation as it pertains to medical device product development. The Software Engineer may also be assigned to focus their activities on existing product lines to make improvements to user experience, quality, reliability, cost, and efficiency in manufacturing. This individual must have strong technical skills complemented by great communications and teamwork qualities. Experience in medical device software development in a structured/regulated environment such as medical device development is required.
Responsibilities (Specific tasks, duties, essential functions of the job)
Software Engineer I
- Designs, develops, and maintains embedded (firmware) on-device applications, cloud-based applications, or mobile applications
- Maintains and improves released software products and device applications
- Uses standard tools and processes for version control, configuration management and code quality
- Contributes to requirements definition at the functional level
- Participates in software code reviews/inspections
- Builds, integrates, troubleshoots, and debugs software and hardware components
- Generates required product development documentation including functional specifications and design documents
- Executes manual or automated tests for verification and validation of software applications
- Designs, codes, and validates software tools for use in the manufacturing of the product
- Works with software testers, patient support, manufacturing, and other cross-functional team members to resolve software issues
- Drives improvements to product and process quality
- Complies with all company policies and procedures
- Assists with any other duties as assigned
Software Engineer II
In addition to items listed for Software Engineer I, a Software Engineer II may also be responsible for the following:
- Works with other engineers and leads parts of the design and implementation
- Uses design patterns and frameworks to design mid-level software components
- Conducts analysis of system design and integration
- Analyzes third-party, off-the-shelf software
- Determines and proposes alternate design approaches
- Provides support to verification test teams as necessary to maintain good quality, including problem identification, analysis, and solutions
Software Engineer III
In addition to items listed for Software Engineer II, a Software Engineer III may also be responsible for the following:
- Responsible for software risk analysis of subcomponents within the system software design
- Administrates Inogen's EPDM system and all parts during the development phases until release to production
- Mentors less experienced engineers
- Reviews engineering artifacts and test reports for accuracy and completeness, following good documentation practices
- Writes protocols for software system design verification and validation of Inogen products
Software Engineer IV
In addition to items listed for Software Engineer III, a Software Engineer IV may also be responsible for the following:
- Establishes organization standards for tools and processes for version control, configuration management and code quality
- Suggests and implements process improvement initiatives
- Responsible for system level design and system architecture decisions
- Selects, implements, and maintains appropriate design tools for software design, test, and implementation
- Participates in creating and maintaining budgets for projects and the SW department
- Be financially responsible for purchases and expenses related to SW development tools and systems
Knowledge, Skills, and Abilities
- Must have strong work ethic
- Excellent oral and written communication skills required
- Attention to detail with accurate and complete documentation
- Effective conflict resolution
- Analytical & problem-solving skills
- Solutions-oriented problem solver
- Versed in and able to effectively apply common root cause analysis tools
- Excellent planning, communication, and organizational skills
- Ability to effectively interface with different departments within the company
- Self-motivated and capable of self-direction
- Highly motivated and able to act as a key part of the Engineering team
Qualifications (Experience and Education)
Level I Software Engineer I |
|
Level II Software Engineer II |
|
Level III Software Engineer III |
|
Level IV Software Engineer IV |
|