The Senior Embedded Software Engineer develops embedded software for complex medical devices, ensuring quality through code reviews and unit testing. Responsibilities include authoring specifications and designs, conducting research, solving product design issues, and collaborating across teams. The role requires compliance with industry standards and mentorship of others in software development processes.
Work Flexibility: Hybrid or Onsite
What you will do:
Technical Responsibilities:
- Develop Embedded software for complex medical device.
- Conduct advanced prototyping and testing.
- Ensure quality code deliveries by means of code review & unit testing etc.
- Authoring Software requirement specifications, Software Architecture document, Software detail design and software release notes for medical devices.
- Conduct advanced problem solving, identify potential solutions, and evaluate them against component and sub-system requirements.
- Conduct and design research and studies to support advanced product design.
- Translate user needs to design inputs/specifications and produce advanced component and sub-system level designs.
- Analyze and correct complex product design issues, using independent judgment.
- Independently balance design tradeoffs while designing a component of the system.
- Develop and design software systems per requirements and architecture defined.
- Code development time/resource estimation to support projects.
Medical Device Compliance:
- Be proficient with and mentor others in usage of industry standards like IEC-62304, including design requirements and test strategies per applicable regulations.
- Lead creation and refinement of engineering documentation, such as the Design History file.
- Follow and mentor others on R&D procedures like design controls and risk management, per the Quality Management System
General Responsibilities:
- Work cooperatively with R&D, Quality, Manufacturing, Regulatory, Clinical, Marketing and Project Management to ensure project success as a leader on the team.
- Identify and support the creation of or improvements to procedures, policies, processes, systems, and technology
- Support and execute segments of complex product development to advance projects through the design /development/launch process.
- Contribute to product development from concept through release.
- Deliver high quality results with passion, energy and drive to meet business priorities.
- Build relationships and influence across the engineering groups within the business.
- Design, develop, modify, evaluate and verify software components for medical devices.
What you will need:
Required Skills:
- Bachelor's/ MTech/MS degree in ECE/E&I, Electrical and Electronics or related discipline
- 5-7 years of experience in developing firmware/embedded software for 8 & 32-bit micro-controllers in C/C++ languages with good understanding of design concepts and patterns
Design and Development Skills:
- Knowledgeable with integrated development environments (IDE) for projects.
- Good Knowledge of OS concepts, Linux Kernel, device drivers, system internals, networking tools & utilities.
- Understanding of hardware subsystem interface and debugging in an embedded environment.
- Hands on experience in developing scripts and debugging embedded Linux based embedded application.
- Knowledgeable with tools for static/dynamic analysis, memory management, code coverage and techniques for analyzing software.
- 5+ years of experience in firmware writing for UART/RS232, SPI, CAN, I2C communication protocols.
Software Process Skills:
- Software Development Life Cycle processes
- Knowledge in creating estimates for code implementation time/resource for assigned tasks and projects.
- Knowledge from using Application Lifecycle Management /Traceability tools.
- Knowledge of regulatory and compliance standards applied to the SDLC (Software Development Life Cycle).
Preferred Skills:
- Understands the theory and methods of data reading for Embedded communication protocol and can apply them under minimal supervision while demonstrating
- Reading data of CAN bus, UART/ RS232, I2C using communication cables.
- Experience in tools for monitoring embedded communication data.
- Reading data of UART/RS232, CAN, I2C, SPI using Oscilloscope
Travel Percentage: 10%
Top Skills
C
C++
Similar Jobs
Be an Early Applicant
The Senior Engineer - Embedded Software will design and develop embedded software systems, transition user needs into design specifications, and support project documentation and testing. Responsibilities include collaborating across teams and leading efforts in creating new components while maintaining existing systems.
Be an Early Applicant
As a Staff/Sr. Staff Engineer, you will develop, enhance, and test embedded application software. Your role will involve participating in various stages of the software development lifecycle, using programming skills to address customer needs and ensure compliance with regulations. You will work independently and support team members in delivering robust software solutions.
Be an Early Applicant
The Senior Large Language Models Engineer will develop GenAI applications, including answering engines and extraction components, utilizing RAG-based pipelines with frameworks like LangChain and LlamaIndex. The role requires expertise in LLMs, prompt crafting, and engineering aspects of GenAI applications for scalability and efficiency.
What you need to know about the Delhi Tech Scene
Delhi, India's capital city, is a place where tradition and progress co-exist. While Old Delhi is known for its rich history and bustling markets, New Delhi is defined by its modern architecture. It's clear the region places a strong emphasis on preserving its cultural heritage while embracing technological advancements, particularly in artificial intelligence, which plays a central role in shaping the city's tech landscape, fueled by investments in research and development.