Sr. Software Engineer
IDj-5620
Job TypeDirect Hire
Compensation$140000 - $165000 / yr
Summary
We are seeking an experienced senior-level Software Engineer to join our Algorithm development team.
This role will focus on implementing advanced algorithms and software for cutting-edge medical devices, with a focus on real-time signal processing and system integration
Location – Irvine, California
Base Salary – $140,000 – $165,000
Responsibilities
- Perform software design and implementation, following coding guidelines and considering system characteristics to produce optimal performance, reliability, and maintainability
- Conduct software evaluation and testing of own software, software from other engineering staff, and third-party software
- Provide technical documentation for the design, implementation and testing of the software
- Attend design review meetings as needed to adhere to the software development procedures
- Document and repair errors related to software
- Enhance professional growth and development through participation in educational programs, current literature, in-service meetings and workshops
- Work with cross-functional project teams to complete Product Engineering projects with minimal guidance
- Develop cohesive interpersonal working relationships with all peers and team members
- Work with source code management tools (e.g. Github) and work tracking tools (e.g. JIRA)
Requirements:
- Bachelor’s degree in computer sciences, electrical engineering
- 10+ years of direct industry experience is required
- Strong hands-on programming experience in C# and C/C++ (Windows, Linux).
- Programming experience in Python, MATLAB, or similar scientific programming language.
- Experience with CI/CD (Continuous Integration/Continuous Deployment) frameworks such as Azure DevOps and Pipelines.
- Experience in the design, optimization, integration and validation of complex real-time data processing algorithms.
- Proficiency in software development tools (e.g. Visual Studio, PyCharm) and source control (e.g. Git).
- Knowledge of software development methodologies and best practices, e.g. object-oriented design, design patterns, code analysis, development processes, etc.