o Acceptance criteria: Shall have working experience in creating architectures for at least
4 projects.
Shall be strong in Object-Oriented Design and Thinking.
Shall be strong in documenting software architecture and communicating the same using UML.
Shall be strong in decomposing larger system into smaller units with clear implementation
dependencies marked for planning.
Shall be strong in effort estimation techniques.
Shall possess strong Problem Solving and Analytical Skills.
Shall be strong in C or C++ programing language experience.
Shall possess good understanding of either Linux or QNX or Android Operating Systems
Shall have a strong experience in developing software using in POSIX APIs.
Shall have a strong understanding on Networking, socket programming and working experience
in at least one of the IPC Frameworks like DBUS, SOME/IP, Binders etc.
Working experience with test framework and automation projects such as Robot Framework.
Knowledge on various software licenses and their compatibilities.
Shall posses strong knowledge in bootloaders, system startup, power management, persistency
management, health management and diagnostics framework for automotive systems.
Shall have a good knowledge on Functional Safety.
Shall have a good understanding hardware and processor internals.
Nice to haves:
Knowledge or working experience in AUTOSAR and / or Adaptive Autosar.
Understanding of GNU/Linux and its device driver framework.
Knowledge in “Secure Programming Techniques” is a plus.
Understanding in ARM Trusted Frameworks, Bootloaders & Virtualization Solutions is a plus.
Involvement in open-source projects in the past is a plus.
Knowledge in Package management and installers.
Similar jobs
Job Description
Are you passionate about making a difference in people's lives through groundbreaking products and services ? Look no further! Protectol Health is a pioneering pharma-tech company with a holistic approach that spans conventional pharmaceuticals, nutraceuticals, nutrients, and business safety. Our dedication to the value of "Life matters" is not just a slogan – it's ingrained in every facet of our work culture and offerings.
With dedicated divisions in Pharma, Technology, Nutraceuticals, Nutriments, and Business Safety, we drive impactful research and development activities that redefine industries and touch lives. Our operational footprint extends across the GCC countries and India, allowing us to reach and transform communities on a grand scale.
If you're enthusiastic about creating a positive impact and wish to be a part of an organization that values and prioritizes lives, Protectol Health welcomes you. Join us in our mission to shape a healthier present and future. Your expertise and passion will find a meaningful home here.
Roles and Responsibilities
As an Embedded Firmware Engineer, you will be responsible for:
● Leading the firmware development for our product line of safety and medical devices.
● Designing, developing, testing, and maintaining embedded firmware.
● Collaborating with cross-functional teams to define software requirements, specifications, and architectures based on product requirements and industry standards.
● Implementing firmware solutions that comply with ATEX certification, IEC 61508, and Functional Safety (SIL standards) for devices used in hazardous locations.
● Conducting thorough testing and validation of firmware to ensure reliability, accuracy, and compliance with safety standards.
● Optimizing firmware for power efficiency and performance to meet the life of portable and battery-powered devices.
● Implement firmware algorithms for sensor calibration, data processing, and user interface interactions.
● Assisting in hardware-software integration, debugging, and troubleshooting to ensure seamless functionality of the devices.
● Collaborating with Quality Assurance and Product Validation teams to ensure the highest quality of firmware deliverables.
● Participating in code reviews and providing constructive feedback to improve code quality and maintainability.
● Keeping abreast of emerging technologies, industry trends, and advancements in embedded systems for continuous improvement and innovation.
Skills and Qualifications:
● Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, or related field.
● 3+ years of experience in embedded firmware development for portable and wireless gas detectors and docking stations.
● Proficiency in C/C++ programming languages for embedded systems.
● Hands-on experience with a complete product development cycle is an add-on.
● Experience with STM32/STM8/ MSP430 or any other low-power microcontrollers for the development of low-powered devices.
● Experience in reading and optimizing analog data in various types of ADCs.
● Understanding of ATEX certification requirements and compliance.
● Understanding and practical experience with Functional Safety standards (SIL2/3 standards) in the development of safety-critical systems is an add-on.
● Experience with coding standards. (eg: Misra-C) Familiarity with System architectures and communication protocols like I2C, UART, SPI, etc. Knowledge of sleep modes and low-power optimization techniques for battery-operated devices.
● Experience in developing and using custom segment LCDs (TN, STN, etc.) used in battery-powered ultra-low power devices.
● Experience with software development tools, version control systems, and bug-tracking systems. Strong analytical and problem-solving skills with attention to detail.
● Excellent communication and teamwork skills.
● Advantages for individuals who thrive in a startup setting.
Work Culture
At Protectol Health, we prioritize our diverse and talented team. We offer flexible work arrangements and resources for well-being to support our employees' personal and professional growth. By putting people first, we attract and retain top talent and drive innovation toward our mission of improving health and well-being
Primary skills:
At least 3+ years of working experience on embedded firmware development
- Experience in multithreaded programming, network programming (wired and wireless protocols), real-time programming, cross-platform and cross-language development
- Hands-on experience on driver development for various sensors
- Working knowledge of communication protocols like UART, I2C, SPI, USB, Ethernet, etc
- Product development experience with range of microcontroller/microprocessor architectures, adoption of bare-metal, RTOS and Linux operating systems on new platforms
-Hands-on experience on software development in Bluetooth domain is added advantage
- Experience with hardware lab equipment such as digital scope, logic analyser and JTAG
- Understanding of embedded development constraints and system performance
- Experience with programming in C/C++ and Embedded C
Technical Lead (Embedded Software - Linux)
Job Responsibilities:
Lead a team of software/Linux development engineers working on microcontroller firmware development, Linux platform drivers and IOT solutions. Should be able to guide team members, resolve technical roadblocks and deliver project commitments. Will be the go-to person and first-level escalation point for all technical issues faced by the team. Looking for someone with 6+ years in the embedded industry and a passion to build a core team in a growing company. Team size will vary from 6 to 12 people, mainly firmware and Linux engineers.
The selected candidate for this role will be reporting to the software director/manager in the organization.
- Work with firmware and application architects to create a project execution plan
- Review project proposals for execution scope & timelines
- Lead embedded software development activities by the team
- Work with QA teams to resolve bugs and ensure release readiness
- Work with h/w design and PM teams to ensure smooth execution and timely delivery of projects
The main responsibilities of this role are:
Technical:
- Strong programming skills (C, C++, assembly)
- Linux development experience (porting & platform drivers)
- Expert-level knowledge of embedded microcontroller & microprocessor-based systems
- Prior experience in delivering critical modules for microcontroller projects
- Good understanding of commonly used embedded communication protocols
- Good understanding of common embedded peripherals, interfaces & sensors
- Experience working on Real-Time systems (RTOS)
- Should be able to quickly learn new technologies and enable the team on the same
- Should be able to work with minimal technical guidance
Leadership:
- This role requires excellent communication skills
- Strong analytical & problem-solving skills
- Should be able to lead junior engineers by providing technical mentoring
- Owns task division, task allocation and tracking within the team
- Require multi-tasking and time management skills
- Prior experience working with overseas clients
- Periodically report progress to management
Other desirable skills:
Knowledge of Python
Experience: 6 to 10 years
- Working Experience in
· C and/or C++ programming
o Should have Project working experience in C or C++
o Should have done feature enhancement and/or Bug fixing using C/C++.
· System Programming knowledge in
o Muti-threaded programming, Process contexts/forks/execs and system calls
o IPCs (like Socket programming, Message Queues, semaphores)
o Linux Operating system
o File access calls, like file descriptor handled operations.
· Enterprise Security domain and SaaS
o IPSec, SSL VPN tunnelling
C/C++ Developer
We’re doing things no one has ever done. From developing game-changing technology and solutions to
helping the world’s top brands connect like never before, every day brings new challenges and opportunities
to innovate. We offer the chance to make your mark on something awesome.
What are we looking for?
Strong C/C++ programming and debugging skills in a Linux environment.
Experience with Design Patterns, ACE Framework, and Socket Programming.
Experience in Multi-threaded software development for Multicore Architectures.
Experience in VOIP application development, preferably on client/server platforms.
Understanding of system performance and scaling
Experience in embedded software development
Excellent problem solving/debugging skills design, develop, troubleshoot and debug
Software programs for databases, applications, tools, networks etc.
Requirements:
Bachelor's degree in Computer Science or related field or equivalent experience.
3-6 years of software engineering or related experience.
Location: Bangalore/Hybrid Model
Build new features, enhance existing functionality and fix issues in the Windows Desktop application.
Help develop and maintain UI component library (Windows, dialogs , complex widgets)
Advise and assist the other developers in the Desktop.
Skills required
- Very strong programming skills in UI development using Qt/C++
- A strong ability to think about components and modules as they relate to other components as part of a larger system.
- QML knowledge is a plus
- Cross platform application development knowledge is a plus, not mandatory
- A very strong attention to detail and the willingness to deliver pixel perfect UI according to the designs.
- Must have: Very strong in ModelView architecture
- Must have : In-depth C++, STL, and data structures knowledge
Desirable : Familiar with unit test frameworks like QtTest or Gtest
Desirable : Experienced with Agile methodology
Desirable : Knowledge in GIT or any other config management tool
Good understanding of object oriented techniques methodologies.
Good hands-on experience of C++ system programming and design.
Key Skills
C/C++, Qt, STL, Design, QML
Experience In product development is good to have
Primary Skill: System Software Development
Skill sets req:
- Linux porting/development; Linux kernel concepts
- Expertise in Linux BSP device driver development
- Customizing kernel + Porting + Developing Applications Linux Device Driver Development (Character devices) Good Concepts of Network Drivers File Systems Concepts
- Expertise in porting, network stack; optimization, network programming
- Bootloader/Uboot porting
- Camera driver development (Good to have)