
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
Responsibilities:
IoT Deployment (on-field) and maintenance
Lead assembly, testing, and finalization of IoT products
Black Box Testing: BLE, WiFi
Integration testing: (IoT, backend, and Android)
Test report and deployment setup documentation
Apply quality engineering principles throughout the Agile product lifecycle.
Collaborate closely with cross-functional teams.
Required qualifications:
2021/2022 passed out B.Tech Graduate in ECE or EEE
Hands-on experience with microcontrollers like Arduino and ESP.
Knowledge of C programming language.
Excellent communication and critical thinking skills.
Good organizational skills and a detail-oriented mindset.
Ability to work in a fast-paced environment with minimal supervision.
Sense of ownership and pride in your performance and its impact on the company’s success.
Team player.
Good time management skills.
Preferred qualifications:
Good understanding of embedded and IoT systems.
Who can apply
Only those candidates should apply who
are available for full-time (in-office)
can start the Job immediately
are from Mumbai
have relevant skills and interests
- Coding and Debugging in C language.
- Knowledge on ARM based architectures of 8/16/32 Microcontrollers,UART, ADC, DAC,Ethernet, SPI,CAN,I2C and I2S.
- FPGA RTL coding and Simulation using Verilog/VHDL
Qualification - BE/B.Tech (ECE), M.Sc.(Electronics)
Only Defense and Aerospace, Electronics, Semi-Conductors,
(No Automative industry)
AVANTEL LIMITED is a technology driven public limited company with focus on developing innovative wireless communication products and solutions to meet unique requirements of defense, railways, and telecom sectors. The organization is certified against AS 9100D and ISO 9001:2015 standards for Quality Management System. For more details visit www.avantel.in.
Basic Qualification: BE / Btech Computer Science
Desirable Skills:
1.Software development using Embedded C, C++ with programming standards (MISRA)
2.Knowledge of bus systems, which are used in the automotive industry, like CAN, LIN, I2C, SPI, etc)
3.Software development processes –A-SPICE V-cycle
4.Experience with development of control units for the automotive industry, especially experience with the development based on AUTOSTAR basic software.
5. Experience in the automotive industry according to common development and parameterization tools (i.e. Vector CANoe).
6.Knowledge of standards for safety-critical software (ISO 26262) is a plus.
• 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.
Responsibilities
- Design and implement software of embedded devices and systems from requirements to production and commercial deployment
- Design, develop, code, test and debug system software
- Review code and design
- Analyze and enhance efficiency, stability and scalability of system resources
- Integrate and validate new product designs
- Support software QA and optimize I/O performance
- Provide post production support
- Interface with hardware design and development
- Assess third party and open source software
Requirements
- Proven working experience in software engineering
- BS degree in Computer Science or Engineering
- Experience in hands-on development and troubleshooting on embedded targets
- Solid programming experience in C or C++
- Proven experience in embedded systems design with preemptive, multitasking real-time operating systems
- Familiarity with software configuration management tools, defect tracking tools, and peer review
- Excellent knowledge of OS coding techniques, IP protocols, interfaces and hardware subsystems
- Adequate knowledge of reading schematics and data sheets for components
- Strong documentation and writing skills
You would be part of:
- Designing/Improvement of new/existing architectures of distributed computing with subcomponents of Unmanned Aerial Systems (UAS).
- Working/Researching with industrial state of the art sensor systems and modules, and developing drivers (HAL or wrapper) and applications around their usage.
- Design and implementation of communication protocols between different subcomponents of UAS for distributed computing.
- Writing Applications and Drivers from the scratch for (embedded)linux based systems.
- Scripting and automations around work flows of UAS usage.
- Working with existing sophisticated software stacks of subcomponents of UASs.
- Working closely with electronics, design and systems teams for architecture development and deployment.
- Working closely with Flight Controller engineers to do collaborative development of UAVs.
We expect you to be:
- Experienced in hands-on development of complex embedded systems involving multiple microcontrollers or SoCs.
- Very good in analytical abilities to be able to do core research and development activities.
- Able to write low level drivers (wrapper or core) from the scratch.
- Very comfortable reading and understanding datasheets and reference manuals of microcontrollers, peripherals, sensors etc.
- Able to understand existing complex embedded software stack written in C/C++.
- Solid in C.
- Good in C++.
- Comfortable with using hardware debuggers.
- Having Hands-On experience with RTOS concepts like scheduling, threads synchronicity , race conditions etc.
- Having Solid understanding of interrupt mechanisms.
- Experienced in working with different hardware protocols like SPI, I2C, UART, PWM, CAN, USB etc.
- Having Solid understanding of interrupts architecture of ARM based microcontrollers like STM32, LPC etc.
- Having Good understanding of the concept of bootloaders.
- Able to multitask.
- A self-motivated and motivating personality who can work well independently as well as part of a team
- Having good interpersonal and soft skills who can adapt to the work environment while manifesting a good positive attitude
You are awesome if you are:
- Experienced in Linux Device Driver development.
- Having good exposure of working on and understanding of any sensor modules like GPS, LIDAR etc.
- Experienced in data filtering techniques (Example: Kalman filter)
Job Description: Senior Software Engineer- Embedded Systems
Videogram is looking for Software Engineer in Embedded Systems who will be responsible for designing the embedded systems and installing them in machines and tools. You will be playing an important role in our software team who will be responsible to design and develop the software that controls the processor (micro-controllers and digital signal processors) of the machine. You come with a role as a professional Embedded System Software Engineer to execute a complete embedded software development lifecycle.
Responsibilities:
- Design and implement software of embedded devices and systems from requirements to production and commercial deployment. Responsible for the complete embedded software development lifecycle
- Design, develop, code, test, and debug system software
- Coordinate with the engineers from other disciplines to develop the end product of the requisite standards
- Customize the software to suit the needs of the product nature and expected functioning
- Debug the system to remove the anomalies and inconsistencies
Requirements:
- Candidates require a bachelor's degree in computer science, electrical engineering, software development, embedded software, etc.
- The candidate should be an undergraduate in Computer Science or a relevant field
- Hands-on experience in C++11 or later programming languages
- Knowledge of GIT Version control
- Experience in doing bare metal or RTOS development
- Hands-on experience in developing the code in Linux
- They require exceptional programming skills and competence in using software tools.
- Knowledge of operating systems and of the interaction between hardware/software is important for this profile.
- The attributes of problem-solving ability, analytical skills, proactive behavior, and an adaptable approach are important in this position.
- This discipline of engineering provides scope for creative minds and poses challenges to perform quality work.
- Scripting in Python & Bash is an add-on
- Experience in any of the following technologies:
UART | SPI | I2C |MIPI DSI |Display Port | Low-Level Sata
Additional/ Desirable Interests:
- Personal interest in videography/ photography and audio production
- Experience working programmatically with videos/ images/ audio
- Exposure to low-level details of any video/ image codecs
- Exposure to movie container file formats especially QuickTime/mp4
- Working knowledge of exFAT file system
- Work directly with the other Software/Firmware Engineers and Electrical/RF/Systems Test Engineers to write needed software
- Design and implement software platform for firmware on embedded CPUs with multiple OS such as Windows, Linux, FreeRTOS, TI-RTOS and embedded Linux
- Use compliers, debuggers revision control and automated build systems.
- Design/develop components of software platform for use by other developers to extend its capabilities and build custom applications/behavior on top
- Develop build methodologies, debugging tools/utilities
- Develop and release Software using Agile methodology
- Write unit tests and support continuous integration and automated test methodology
- Brainstorm for new ideas and ways to improvement product and processes
- Consult with peers for feedback during debug/testing stages
- Document and maintain design processes
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.)








