Senior Firmware Engineer
at Deep-tech company working on transformative motor technology
Do you wish to work for a Deep-tech Indian company developing path-breaking products which are set to disrupt every possible industry and domain?
Our client is building a scalable, cloud-controlled, and rare-earth free platform for designing, building, and deploying electric motors for various applications. It aims towards building transformative technology that will make the motors of the future simpler, smarter, more efficient, and easy-to-build in the long run.
The founders are veteran serial entrepreneurs, product experts, and motor technologists with more than eight decades of experience developing cutting-edge products and technologies. The company is bringing transformative motor technology to the forefront of commercial applications. The company aims to make deep fissures in the extant hydrocarbon and rare-earth-based energy economy to create a greener future.
What you need to join us
Are you a coding ninja, algorithmic genius, with a flair for control systems and a passion to create new path breaking technologies (with a green social impact to boot!)? Does working with a bleeding edge research oriented tech startup excite you? If so, please read on and apply.
Responsibilities
- Take ownership of firmware development for motor controllers
- Identify and develop real-time algorithms for controlling cutting-edge Motors and Generators
- Implement motor control algorithms in microcontrollers
- Debug and diagnose the firmware on the controller hardware
- Develop drivers and HAL firmware as needed for various peripherals
Skills and Experience
- Experience in embedded Firmware development
- In-depth knowledge of C programming knowledge
- Extensive engineering experiences in software development with proven track record of at least one product from concept to production
- Hands on experience with development and debugging of embedded systems
- Experience in working with real-time embedded systems and power electronics
- Experience in working with Microcontroller peripherals such as ADC, Timers, Comparators, Input-capture, PWM etc.
- Experience with microcontrollers from TI, NXP, STM32, PIC, Atmel (ARM based microcontroller experience is preferred)
- Ability to translate mathematical concepts to executable code in resource-constrained microcontroller environments
- Exposure to debugging using lab equipment such as Oscilloscopes, Multimeters, Logic Analyzers, signal generators etc.
- Hands-on experience in bringing up a new hardware with firmware written from scratch
- Experience with simulation software such as Matlab, Simulink etc is highly desirable
- Knowledge and experience of control systems is highly preferred
- Experience in automotive domain is preferable
Character Traits
- Proactive
- Problem solver
- Committed and motivated
- Inquisitive and eager to learn
- Clarity of thinking
- Sense of urgency
- Can-do attitude
- Team player
Education and Experience:
B.E – EE, CS, ME (or equivalent) from a reputed institution with 3 years of experience OR
ME/MS – EE, CS, ME (or equivalent) with 1-2 years of experience
Similar jobs
Job Description: General Embedded Engineer
We are looking for a professional Embedded Software Engineer to execute complete embedded software development lifecycle. The goal is to create scalable and optimized software systems.
Requirement:
- Must have 2 to 5 years of experience.
- Bachelor's degree in computer science or engineering
- Experience in writing software for embedded controllers 16/32-bit MCU’s
- Must have programming experience in C or C++ (ie experience in multi-file programming, understanding of variable scopes, pointer operations and following general coding guidelines
- Designing and implementing software of embedded devices and systems
- Designing, developing, coding, testing and debugging system software
- Working experience on Communication Protocols like CAN 2.0, CAN FD,
Skills:
- Can, Linux, Microcontroller Microprocessor
Behaviour
- Team player
- Able to articulate issues/fix and participate in discussions
Lifespark Technologies is looking for individuals with a passion for impacting real lives through technology. Lifespark is one of the most promising startups in the Assistive Tech space in India, and has been honoured with several National and International awards. Our mission is to create seamless, persistent and affordable healthcare solutions. If you are someone who is driven to make a real impact in this world, we are your people.
Lifespark is currently building solutions for Parkinson’s Disease, and we are looking for an embedded software lead to join our growing team. You will be working directly with the founders on high impact problems in the Neurological Healthcare domain. You will be solving some of the most fundamental and exciting challenges in the industry and will have the ability to see your insights turned into real products every day
Responsibilities :
- RTOS based multithreaded software development
- Building future ready, scalable software architectures
- Liasing with hardware team to decide project requirements
- Realtime IoT functionality development on ESP32 platform
- Integration of third party services for cloud based communications and computation
- Maintaining and documenting software via git (GitLab)
- Coordinating releases, setup and maintenance of CI/CD pipelines
- Managing AWS based backend services, integration with AWS services such as S3, Sagemaker
- Deep integration with hardware team - stress testing hardware
- Development of device drivers
- Software testing and maintenance
Recommended experience :
- Good command over Linux
- Familiarity with real time tasks and timing sensitive system design
- Familiarity with BLE/Wifi/etc IoT communication protocols
- Familiarity with major third party platforms for cloud and ML/AI integration
- Testing actual physical outcomes of programmed solutions
- Deep familiarity with ESP-IDF
Location : IIT Bombay, Mumbai
Working mechanism : In-person
Compensation range : 6-12 lpa + ESOPs
For any queries, please contact Amey Desai
- Strong C/C++ programming hands on experience
- Should have work experience on firmware development with strong Linux internals.
- Very good development, design and debugging experience on embedded firmware.
- Added advantage to have experience on Systems management/Out of Band/BMC domain experience
- Good to have automation experience using Python or shell scripting
- Excellent communication and problem solving skills
- Experience on tools like JIRA, Yocto, Visual studio, etc.
• Experience in system design and building IoT systems in resource and power constrained environments
• Proficient in C language on embedded platforms and familiarity with hardware design of embedded system is a plus
• Development on Linux Platform/RTOS with an emphasis on embedded device driver development, multi-threading, and firmware debugging
• Experience with mesh network or sensor network and communication
• Good understanding of multiple IoT platform components is essential
• Solid working knowledge using IoT hardware platforms, communication boards, and gateways
• Hands-on in internet protocols and software development using protocols including LoRA, Wi-Fi, BLE, ZigBee, NB-IoT, M2M,6LoWPAN, Ethernet etc.
• Expert hands-on proficiency in developing applications using one or more technology stacks
• Strong hands-on understanding of scalability, security, high availability, and operational requirements
• Sound and proven decision-making skills to influence the technology choice and implementation methodologies
• Hands-on in object-oriented programming principles, design patterns, and software architecture
• Good with rapid problem solving, a strong technical background, and passion for continuous improvement
• Must have had hands on experience with Connected smart products having Product and Application software, data and Cloud
• Must have intimate knowledge of tools and processes used for Product(firmware) and/or Application software and/or Device hardware and/or Cloud
• Must be intimately familiar with Agile and Scrum, in the creation of dashboards for Sprints. An expectation would be to implement Scrum within the organization
• Must have strong familiarity with SMAC(social media, mobile, analytics and cloud) trends and application to saleable product categories
• Must have worked closely with Mechanical/Electrical/Electronics engineering teams in the development of smart/connected products.
Application programming.
• Strong knowledge for Linux OS, Inter Process
Communication, and multi-threaded/multi-
process application development.
• Programming skill:
o C → Advanced
o Scripting (Shell/Python) ->
Intermediate
o C++ → Intermediate
• Familiarity working with development tools like
GDB, Velgrin, SCA Tools, GIT, SVN, JIRA.
• Experience working with various build systems
like, Jenkins, etc
• Experience working with different embedded
platform like ARM/PowerPC processor and DSP
based on Qualcomm, TI, NXP, NVIDIA, Intel
processors
• Strong sense of ownership, passionate, fast
learner, analytical mind set.
• Ability to closely work with electrical team
• Strong sense of ownership, passionate, fast
learner, analytical mind set, perfection seeker.
Role: Sr. Principle Engineer -Firmware
Experience: 8 to 10 Yrs.
Job description:
Primary skills:
- At least 8 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
- Prior experience with overseeing board bring-up and validation
- Hands-on experience on driver development for various sensors,Flash,PMIC
- 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
- Minimum 2+ years of experience doing hands-on software development in Bluetooth domain; application, framework, Bluetooth stack or drivers
- Working Experience In display driver development with MIPI/LVDS/QSPI will be a value addition
- Experience with hardware lab equipment such as digital scope, logic analyser and JTAG
- Understanding of embedded development constraints and system performance
- Hands-on Experience on System level integration
- Experience with programming in C/C++/python
- Experience in reading schematics
Secondary skills:
- Version Control System
- Working experience on BLE SoC like Nordic, Ambiq, Dailog
- Bug Tracking
- Developing HMI application in Qt or similar UI frameworks
- Develop C++ or Rust backends for the HMI
- Understand and optimize potential performance bottlenecks
Position Title: Embedded Software Developer (Linux Driver Development)
Experience: 4 - 10 Years
Mode of Hire: Permanent, Deployed at Client Location.
Work Location: Hyderabad
Notice Period: Max. 20 - 30 Days (Early Joiners will be preferable).
What we are looking for?
Must Have:
- Should have strong proficiency in C, C++ and Embedded Systems (embedded C)
- Should have 4+ years of experience in Linux Driver Development, Application development
- Excellent debugging skills at kernel and user space and exposure to different debugging tools
- High level understanding of ARM & RISC (Instructions) OR MB Processor and Assembly Programming
Good to Have:
- Any Driver development exposure in Multimedia, Exposure to any one of the Linux Kernel Framework (Display, Camera Drivers, HDMI, GPU, MIPI, DRM framework, V4L2, etc.)