Software Engineer
ARCHIVED
We can't find an active application page for this role right now. It may reopen or be listed elsewhere. Use Next Steps to search for an active apply link and similar live jobs.
Job Title: Software engineerLocation: Foothill Ranch, CADuration: Direct Hire Full Time RoleRole SummaryWe are seeking a highly experienced Senior Software Engineer to design and develop robust, scalable, and user-friendly software solutions for a client medical imaging device. The job responsibilities cover development of software modules for real-time data and image acquisition, design and development of software APIs, and interface with various hardware components. As the person in this role, you will need to have intimate knowledge of working with various hardware modules. You will be at the forefront working on interfacing with key hardware modules within the organization. We are started everything last year from scratch – this role is for someone who wants to make a real difference developing the world’s best ophthalmic platform. You need to be a self-starter, comfortable with a fast-paced workplace, able to achieve goals within a high-level of ambiguity, work across functional lines, and take a hands-on approach to explore and find optimal solutions. Key Responsibilities: Design and implement software modules for a medical ophthalmic device.Design and develop interface libraries for a custom 10 Gig Ethernet hardware module.Implement software modules communicating through RS-232 and other communication protocols.Implement hardware logging and debugging features.Develop and implement workflows for instrument calibration tools.Create software libraries and modules to work on the device.Software analysis, planning, design, implementation, and verification of a client medical deviceDevelop software modules and components that meet the software requirements and design inputs.Translate application storyboards and use cases into functional applications.Design, build, and maintain efficient, reusable, and reliable code.Co-ordinates and provides input to other developers on interfaces.Produce high quality testable code according to design specifications.Document software design specifications, implementation details, and test plans.Identify and prioritize new software features and applications in conjunction with project stakeholders.Collaborate with product management and engineering teams to define software requirements, architecture, and software interfaces.Participate in code peer reviews with the development team to ensure a high-level of quality is maintained.Contribute to product requirement development and risk management reviews.Troubleshoot and debug software issues throughout the development process.Stay current with emerging technologies, industry trends, and best practices in software development Qualifications and RequirementsQualifications:Bachelor’s degree in computer science, software engineering, or related field3+ years of experience in streaming imaging pipeline software architecture and developmentStrong programming skills using C/C++Strong programming skills with multi-threading and synchronization objectsProficiency with network communication protocolsExperience with synchronous and asynchronous serial communication technologiesStrong debugging and problem-solving skills in complex environments.Proven analytical skills across hardware/software boundaries.Strong understanding of software architecture, design patterns, and object-oriented principlesExperience with Git Preferred: Understanding of electrical engineering fundamentals (analog/digital interfaces, timing, etc) is a plus.Knowledge of Agile software development methodologiesFamiliarity with medical device regulations and standards is a plus.Excellent problem-solving skills, attention to details, and ability to work effectively in a collaborative team environment.Strong analytical and communication skillsSelf-starter with sense of initiativeHands-on and detail-orientedHigh level of integrity and accountability