Software Engineering Manager
Role details
Job location
Tech stack
Job description
This role leads a software engineering team that designs, develops, and implements software for new and existing medical products. The Software Engineering Manager defines and executes a strategic vision for modern, efficient, and compliant software development processes, procedures, and tools. As a working manager, this person actively contributes to coding and documentation, from user needs through test cases, while ensuring the technical excellence and regulatory compliance of all software delivered by the team., * Lead, grow, and mentor a team of software engineers, fostering a high-performing and collaborative environment.
- Provide day-to-day technical leadership to software staff and guide them in best practices for software and firmware development.
- Develop, implement, and continuously improve software development procedures and methodologies that comply with medical device regulations and align with current software engineering best practices.
- Select, manage, and coordinate external resources for software validation testing and cybersecurity penetration testing.
- Direct and enhance software and firmware testing methods to ensure compatibility, reliability, and stability across products.
- Provide technical guidance and oversight on software system designs, platforms, and architecture to support new markets and evolving customer needs.
- Direct or create software specifications based on user requirements and product design requirements, ensuring clarity and traceability.
- Write new software and firmware code that reliably functions and performs in accordance with approved software requirement specifications.
- Direct and create manual and automated software bug testing and code reviews to ensure software quality prior to release.
- Direct or create software design documents, flowcharts, and other design output documentation for software and firmware to support product maintenance and verification testing.
- Develop or maintain software for website products, or oversee external resources responsible for this work, as needed.
- Lead sustaining engineering activities for field-reported issues related to existing firmware and software products.
- Actively participate in investigations of issues related to software systems, collaborating with cross-functional teams as required.
- Direct or perform analysis of field-reported issues related to software or firmware performance, identifying root causes and corrective actions.
- Direct and develop new or modified software and firmware code to address and reduce field-reported issues.
- Ensure that all software development activities adhere to relevant medical device safety, software standards, and internal quality systems.
- Coordinate and guide teams located in domestic and international locations to achieve aligned technical and project goals.
Requirements
Visionary Mercurial Leadership Management Automation Innovation Mitigation Flowcharts Code Review Reliability Coordinating Communication Investigation Cyber Security Product Design Version Control Problem Solving Medical Devices Microsoft Office Computer Science Software Systems Electromechanics IT Infrastructure Embedded Firmware Threat Assessment Influencing Skills Strategic Planning Penetration Testing Process Improvement Software Validation Software Engineering Software Development Technical Leadership Regulatory Compliance Programming Languages Sustaining Engineering New Product Development Artificial Intelligence C (Programming Language) Software Licensing Audit C# (Programming Language) Software Design Documents Engineering Design Process C++ (Programming Language) Software Quality (SQA/SQC) Verbal Communication Skills User Requirements Documents Bug Tracking And Management Git (Version Control System) Influencing Without Authority Continuous Improvement Process, * Bachelor's degree in Software Engineering or Computer Science.
- Twelve or more years of experience in software development after completion of a Bachelor's degree.
- At least six years of experience in the medical device industry within those twelve or more years.
- At least five years of experience as a Software Engineering Manager leading engineering teams.
- Demonstrated ability to build, lead, and sustain a high-performing software engineering team.
- Demonstrated ability to apply structured problem-solving techniques to achieve positive outcomes.
- Proficiency in programming languages such as C, C++, C#, and SQL.
- Experience in cybersecurity applied to software and medical device environments.
- Strong knowledge of medical device safety and software standards such as IEC, IEC, and ISO (specific standards not fully specified in the source text).
- Working knowledge of medical IT infrastructure, cybersecurity requirements, and regulatory compliance expectations.
- Proficiency with code management and version control tools such as Git and Mercurial.
- Ability to direct and collaborate with teams across domestic and international locations.
- Proficiency in standard Microsoft Office applications for documentation, communication, and reporting.
- Experience with embedded firmware development, particularly in medical device contexts.
- Ability to ensure adherence to software development life cycle (SDLC) processes and software compliance requirements., * Advanced degree in Software Engineering, Computer Science, or a related field is desirable.
- Preferably, at least two years of experience developing real-time firmware for actively controlling medical devices with electro-mechanical elements.
- Experience developing code for cloud and web applications is desirable but not required.
- Experience with medical device cybersecurity, including threat assessment and mitigation strategies.
- Experience with embedded firmware development for safety-critical systems.
- Familiarity with SDLC frameworks and best practices specific to regulated industries.
- Ability to work effectively with external partners and vendors for validation, penetration testing, and web development.
- Strong written and verbal communication skills to create clear specifications, design documents, and test documentation.
- Ability to influence and implement process improvements across engineering teams and functions., Schaumburg, IL*Remote
Firmware Visionary Mercurial Leadership Management Automation Innovation Mitigation Flowcharts Code Review Reliability Coordinating Communication Investigation Cyber Security Product Design Version Control Problem Solving Medical Devices Microsoft Office Computer Science Software Systems Electromechanics IT Infrastructure Embedded Firmware Threat Assessment Influencing Skills Strategic Planning Penetration Testing Process Improvement Software Validation Software Engineering Software Development Technical Leadership Regulatory Compliance Programming Languages Sustaining Engineering New Product Development Artificial Intelligence C (Programming Language) Software Licensing Audit C# (Programming Language) Software Design Documents Engineering Design Process C++ (Programming Language) Software Quality (SQA/SQC) Verbal Communication Skills User Requirements Documents Bug Tracking And Management Git (Version Control System) Influencing Without Authority Continuous Improvement Process Systems Development Life Cycle Software Development Life Cycle +0
Google IT Automation with Python Director, Software Development Engineer in Test Walgreens
Deerfield, IL*On-Site
CI/CD DevOps Coaching Pipelines Leadership Automation Middleware Code Review Scalability Reliability Testability Quality Gate Microservices Observability Systems Design Manual Testing Test Automation Maintainability Customer Service Computer Science Security Testing Contract Testing Quality Assurance Influencing Skills Quality Management Shift-Left Testing Workflow Management Root Cause Analysis Integration Testing Succession Planning Software Versioning Software Engineering Software Development Cycle Time Variation Test Data Management Test Data Generation Relationship Building Test Execution Engine Test Automation Tools Service Virtualization API System Integration Artificial Intelligence Cloud-Native Architecture Engineering Design Process Software Quality (SQA/SQC) Influencing Without Authority Continuous Improvement Process Systems Development Life Cycle Enterprise Application Software Software Development Life Cycle Back End (Software Engineering) Cross-Functional Team Leadership Application Programming Interface (API) +0
Google IT Automation with Python Software Engineering Manager Actalent
Itasca, IL*Remote
Firmware Visionary Mercurial Leadership Management Automation Innovation Mitigation Flowcharts Code Review Reliability Coordinating Communication Investigation Cyber Security Product Design Version Control Problem Solving Medical Devices Microsoft Office Computer Science Software Systems Electromechanics IT Infrastructure Embedded Firmware Threat Assessment Influencing Skills Strategic Planning Penetration Testing Process Improvement Software Validation Software Engineering Software Development Technical Leadership Regulatory Compliance Programming Languages Sustaining Engineering New Product Development Artificial Intelligence C (Programming Language) Software Licensing Audit C# (Programming Language) Software Design Documents Engineering Design Process C++ (Programming Language) Software Quality (SQA/SQC) Verbal Communication Skills User Requirements Documents Bug Tracking And Management Git (Version Control System) Influencing Without Authority Continuous Improvement Process Systems Development Life Cycle