A Senior Engineer, Software has deep experience with and contributes to multiple technologies and product lines across the company in addition to working more in a technical leadership role of Accelerate's integrated microbiology diagnostic systems. Their depth of experience and maturity allows them to work independently with less direct guidance in day-to-day activities. Expectation is they can identify and prioritize tasks for themselves and junior peers. Works with senior management. Senior engineers also think ahead for strategic planning and execution.
RESPONSIBILITIES AND ACCOUNTABILITIES:
Architects and develops high quality, innovative, and efficient image processing software (and integrated components) that comply with coding standards and technical design
Analyzes petabyte-scale image datasets in a batch execution environment to understand the impact of changes to image processing
Manages the challenges of a complicated and regulated software environment with efficient and robust design choices and coding practices.
Meticulous analysis of all image processing failures via investigative tools including valgrind and performing heap analysis of faults
Generates software requirements, architecture, and design documents; participates in code reviews.
Contributes to the development and review of software protocols/reports and risk documents.
Works on the most complex tasks requiring break-through solutions.
Aids in long-term project planning; promptly escalates issues.
Provides regular guidance to engineering team; work is often reviewed by leadership team.
Contributes to milestones of a project; results are critical to successful completion of project.
Conducts research on emerging products, services, protocols, and standards in support of development efforts.
Participates in the review of and provides input to product requirements; contributes to new ideas of products as well as process improvements.
Plans, develops, and implements large-scale projects from conception to completion.
Troubleshoots issues in the lab and in the field.
Works with and collaborates with external parties, such as suppliers, contractors, and customers, on complex solutions.
Collaborates with cross-functional teams to address issues and improve products through review and analysis of customer requirements and company objectives; translates requirements and objectives into solutions.
Performs other duties as required or assigned by team lead or management.
Formal Education/Relevant Experience:
BS Engineering (or equivalent experience)
Minimum of 13 years of experience; additional experience in lieu of formal education may be considered
Knowledge, Skills, and Abilities:
Strong knowledge of image acquisition (preferably microscopy), traditional image processing algorithms, and neural networks. Previous experience deploying a machine learning algorithm to a production environment is a plus.
Strong knowledge of software engineering best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations; understands the limits of tools.
Strong experience throughout the full software development lifecycle, from conception, architecture definition, detailed design, scoping, planning, implementation, testing to documentation, delivery and maintenance.
Familiar working in a Debian-based Linux distribution
Proficient knowledge of:
Python, C++, and CUDA
Continuous integration, including Jenkins
Parallel algorithms and data structures
Computer logic and flow charting
APIs and services
Debugging/root cause analysis process
Revision control/Configuration management
Ability to lead a cross-functional team and train others; provide technical leadership for projects.
Works well with other engineers and technical leads; challenges positively and constructively.
Ability to demonstrate high level of technical knowledge, ingenuity, and creativity.
Develops and applies advanced technologies and engineering principles; has a broad knowledge about design and operation of systems outside engineering.
Ability to exercise independent initiative and judgement when problem solving and setting goals.
Self-starter, proactive, collaborative, and proficient at working both independently and in a small team environment.
Presents design solutions recognized as key breakthroughs to advancing project during all phases of product development.
Presents designs that exceed given requirements and address items that are customer delighters.
Proficient in many troubleshooting techniques and able to quickly solve complex problems with interactions.
Keep attention to detail with excellent time management skills.
Excellent verbal and written communication skills; works effectively with peers.
Proficient understanding in Design Control procedures, Good Documentation Practices (GDP), and Good Manufacturing Processes (GMP) for a medical device or in-vitro diagnostics industry.
Ability to make decisions for others with unclear or not yet fully understood tasks.
Approachable mentor who is viewed as a knowledgeable authority; constructively challenges assumptions; guides junior engineers to correct solutions while encouraging collaboration.
Ability to contribute and interact productively with cross-functional teams in a collaborative environment as a creative, innovative engineer, accountable for deadlines.