Lead the design, development, and maintenance of complex software systems, ensuring high performance, scalability, and reliability
Develop and debug software for embedded systems, ensuring seamless integration with hardware components
Collaborate with cross-functional teams, including hardware engineers, product managers, and quality assurance, to define software requirements and deliver high-quality solutions
Optimize software performance, ensuring low latency, high reliability, and scalability
Conduct code reviews and provide constructive feedback to ensure code quality and adherence to best practices
Mentor and guide junior software engineers, fostering a culture of continuous learning and professional growth
Implement and maintain robust software testing strategies, including unit, integration, and automated testing to ensure high-quality code
Document software designs, coding practices, and development workflows to maintain high levels of clarity and consistency within the team
Troubleshoot and resolve complex technical issues, providing timely and effective solutions
Stay up-to-date with the latest industry trends and technologies, continuously improving the software development process
Attend and participate in pre-clinical in-vivo system evaluations
Participate in laboratory demonstrations for internal stakeholders and clinicians
Requirements
Bachelor's degree and 4 years of relevant experience OR Master’s degree with 2 years of relevant experience or PhD with 0 years relevant experience
Expert-level proficiency in Python and C++
Deep understanding of software engineering principles, including architecture, data structures and algorithms
Extensive experience in software development, with a strong background in designing, implementing, and maintaining complex software systems
Strong problem-solving skills and the ability to make critical technical decisions
Extensive experience in real-time software development and optimization
Experience with ROS, embedded systems and/or real-time operating systems
Solid understanding of network communication protocols and technologies
Experience with software version control systems, such as Git
Experience with Agile development methodologies
Experience with cloud-based platforms and services (e.g., AWS, Azure)
Tech Stack
AWS
Azure
Cloud
Python
Benefits
Health, Dental and vision insurance
Health Savings Account
Healthcare Flexible Spending Account
Life insurance
Long-term disability leave
Dependent daycare spending account
Tuition assistance/reimbursement
Simple Steps (global well-being program)
Incentive plans
401(k) plan plus employer contribution and match
Short-term disability
Paid time off
Paid holidays
Employee Stock Purchase Plan
Employee Assistance Program
Non-qualified Retirement Plan Supplement (subject to IRS earning minimums)
Capital Accumulation Plan (available to Vice Presidents and above, or subject to IRS earning minimums)