PURPOSE AND SCOPE:
Designs, develops, troubleshoots and debugs software programs for enhancements and new products. Develops software and tools in support of design, infrastructure and technology platforms, including operating systems, compilers, routers, networks, utilities, databases, cloud-based and Internet-related tools. Determines hardware compatibility and/or influences hardware design. Adhere to the FMCNA Compliance Program, including following all regulatory and GRD policy requirements.
PRINCIPAL DUTIES AND RESPONSIBILITIES:
- Leads in software architecturedesign and optimization for device safety, code efficiency, and maintainability.
- Creates technical document including but not limited to requirement, technical report and design specifications in a clear and concise manor.
- Works as a core team member, designs, develops, or modifies software for a multiple projects by analyzing the software requirement documents and following the appropriate software development process.
- Provides audits and reviews on junior engineers and integrate their code into the system.
- Leads in debug and test the integrated software using software and hardware tools as needed.
- Leads in code reviews and other related design reviews.
- Works as a team member to participate several projects, report project progress, issues and risks to the supervisors.
- Manages pre-development projects and provide effort estimate and feasibility report.
- Works and supports well with cross-functional groups.
- Keeps up with the state of the art of technologies to ensure the safety and quality of our products.
- Works on problems of diverse scope where analysis of data requires evaluation of identifiable factors. Demonstrates good judgment in selecting methods and techniques for obtaining solutions. Networks with senior internal and external personnel in own area of expertise.
- May provide assistance to junior level staff with more complex tasks that require a higher level of understanding of functions.
- Mentors other staff as applicable.
- Reviews and complies with the Code of Business Conduct and all applicable company policies and procedures, local, state and federal laws and regulations.
- Assists with various projects as assigned by a direct supervisor.
- Other duties as assigned.
PHYSICAL DEMANDS AND WORKING CONDITIONS:
The physical demands and work environment characteristics described here are representative of those an employee encounters while performing the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Bachelor’s Degree or Advanced Degree in Computer Science or Electrical Engineering.
EXPERIENCE AND REQUIRED SKILLS:
- Bachelor’s degree with a minimum of 5-8years of related experience; or Master’s degree with a minimum of 3 years of experience; or a PhD without experience.
- Experience in developing customer and product requirements, translating requirements into systems level architecturedesigns and interface design definitions, and requirement allocation.
- Proficiency in Java and/or C/C++ Assembly/other programming languages and complete understanding of technical principals, theories and concept in the software engineering field, preferable in the medical device area.
- Provide technical solutions of wide range of difficult software engineering problems.
- Full understanding of Android and/or real time embedded operating systems or other operating systems such as Linux.
- Tracking record to bring up a new hardware board or system with initial BSP software.
- Proficient in GUI and device driver development in different operating system environment and/or real time embedded microprocessor programming.
- Proficient with integrated development environments, software source control and general software practices.
- Experience in Ethernet, TCP/IP and other method of communications.
- Identify, suggest, validate and verify off the shelf software for the use of a project.
- Provide strong technical leadership to a software team with junior engineers via mentoring.
- Highly motivated and energetic. Passion for creating high quality medical device software or other related software product.
- Requires excellent problem solving skills.
- Excellent verbal and writing skills.
- Experience in the full software development life cycle.
Job ID 18000DCI