17 Apr Veranex, Senior Software Engineer

About this Role:
Veranex has an exciting opportunity to join our team as a Senior Embedded Software Engineer! You will be part of a team working to improve lives globally through medical technology innovation. The successful candidate will have 5+ years of Medical Devices or other Safety Critical software development experience.
What You Will Do:
•Execute full software development life cycle – requirement capture, architecture, implementation, testing, and support
•Collaborate with other design disciplines including systems, electrical, and firmware engineering
•Support the software development team with translating high level software requirements into detailed software requirements, supporting the documented software architecture
•Verify that the documented architecture is implemented according to plan through participation in code reviews and design reviews throughout the process
•Provide architectural guidance, mentoring other engineers, evaluating new technologies, and defining/leading best practices.
•Embedded Linux user space application development and sustenance
•User Interface application development and sustenance
Qualifications
Required skills:
- 5+ years of Medical Devices or other Safety Critical software development experience
- 5+ years of experience in C++ application development in embedded space
- Bachelor’s Degree in Computer Engineering, Electrical Engineering, Computer Science, Physics, Mathematics, or related technical field
- Good hands-on experience on user space application development on Embedded Linux
- Must have knowledge on multithreading, memory management, debugging using GDB.
- Advanced expertise in Embedded Software Development
- Must have knowledge on Operating systems and multithreaded programming
- Proven track record of successfully leading technically complex development projects and transitions to production
- Open System Interconnection (OSI) model and its application to network design.
- Proficiency with open source cross-compiler tools and Linux kernel development
- Familiarity QT/QML or any other UI software.
- Demonstrated software programming proficiency (C/C++/scripting)
- Strong understanding of processor and hardware requirements around embedded Linux
- Knowledge on Agile/Scrum based product development
- Microprocessor/microcontroller bring-up and embedded device drivers
- Experience in working in a Continuous Integration (CI) environment
- Experience with Software Configuration Management
- Ability to excel in a fast paced and dynamic work environment
- Strong grasp of scripting languages such as Python
- Understanding of electronic circuitry: board bring up and interfacing with on and off chip peripherals such as USB, SPI, UART, I2C, ADC’s and DAC’s
- Strong verbal and written communication skills and the ability to communicate effectively across all levels of the organization.
Preferred:
- Knowledge and experience of rules and regulations for medical device development (IEC 62304 knowledge a plus)
- Experience developing test cases in C++ GTest, GMock framework
- Experience with Laboratory Information Systems (LIS)
- Excellent knowledge of cloud computing technologies and current computing trends.
- Experience using Atlassian Tools or equivalent for software development
- Familiarity with agile software development
- Experience with software quality systems
- Experience with real-time operating systems, microcontrollers, and RTOS
- Experience deploying commercial embedded Linux system