Desired Candidate Profile For Embedded Developer Role
1. Proficient in C language
2. Proficient in Linux application development, TCP/IP protocol, multi-threaded programming, basic encryption algorithm,
3. familiar with Linux system commonly used API and commands, proficient in basic debugging means and methods.
4. Proficient in STM32 and other SCM development, skilled in using Keil and other integrated development environment,
5. proficient in serial port communication programming, Bluetooth, GPIO, SPI, EEPROM and other development, proficient in basic debugging means and methods.
6. Have basic hardware skills and knowledge, can draw PCB and read circuit diagrams, can use an oscilloscope and other tools for debugging.
7. Familiar with embedded system, free-RTOS, RT-Thread, etc.
8. Fluency in both spoken and written English.

About Jellyfish Technologies Pvt Ltd
About
Connect with the team
Similar jobs
Requirements:
- Very good programming knowledge in C/C++
- Experience in Multi-threaded software development
- Understanding of operating systems concepts, system performance, and optimization
- Familiar with working in an Embedded Linux development environment.
- Excellent problem-solving/debugging skills, design, development, troubleshooting, and debugging
- Knowledge of embedded tools like emulators, linkers, makefiles, etc
- Experience in voice applications development, preferably on client/server platforms
- Knowledge of RTOS programming will be added advantage.
- Understanding of different processors. microcontrollers architectures.
- Familiarity with development tools such as GCC, GDB, Eclipse, GNU Make, etc

Please go through with the below mentioned job description
Position title: Firmware Engineer
Experience: 6-12 years
Notice Period: 0-30 days
Location: Bangalore(Sarjapur)
Role type: Permanent
About the role
Experience in Firmware/Software programming in embedded Linux & RTOS based application development. Candidate must have a very good understanding of ARM processor, hardware and custom board or product development experience.
Roles and Responsibilities:
Design, code and integrate software for an embedded Linux/RTOS targeted application(applications, drivers, framework)
Customization, deployment and maintenance of Linux distribution
Interact with Linux kernel, integrate new device drivers Improvement and maintain existing software components
Perform unit test, Integration test, verification and validation of the product developed.
Assist with the hardware design surrounding the processor
Document the projects according to standards (protocols, architecture, technical specifications, etc.)
Specific skills:
Expert in C programming with RTOS.
Hands-On experience with Protocol development.
Nice to have Protocol development experience such as USB or DP, HDMI or equivalent.
System level design and understanding of overall system
Strong knowledge of Linux, ARM processor architecture with SOC, FPGA interface is a plus.
Hand-on experience on Linux kernel and device-driver development and debugging.
Knowledge/Experience of TCP/IP, Network programming.
Ability to write effective and reusable code according to best practices.
Must be a dynamic, autonomous, and team-oriented individual.
Knowledge of hardware and low-level development is an asset
Please provide below mention details:
No. of years of working experience in Embedded Linux -
Protocol stack development Exp, any specific protocol worked on -
Relevant Experience:
Official Notice Period 30/60/90 Days:
Date of Resignation:
Serving Notice Period and Last Working Day:
Current Company:
Current Location:
Work Location:
Current CTC(fixed,variable):
Expected CTC(fixed,variable):
Interview Availability:
Any Offer:
Relocate to Bangalore(Sarjapur):
company name
company location
date of joining


What You'll Do
● Develop embedded system architecture that is efficient and scalable
● Develop multi-device system design, envision customer interaction, and corner cases to build issue-free design
● Develop firmware code for Interrupt driven system which interacts with Android and cloud
● Implement function safety, protection and security in the embedded system
● Implement predictive hardware failure features
Who You Are?
● Passionate individual who loves to work on embedded systems. a person who likes to drive things actively rather than waiting for tasks to get assigned.
● Strong programming capabilities
● Understanding of electronics and hardware
● Clear thought process, believe in simplifying rather than complicating
● Argue and fight over the opinions. Believe in delivering the best for the users
You Should Have
● 3+ year experience in embedded system design
● Mastery in C/C++ for embedded systems. Strong fundamentals of Microcontrollers and their common peripherals.
● Strong basics of C/C++, memory map, compiler functionality
● Done multiple projects during graduation/post-graduation. Participated and performed in tech competitions.
● Experience working with actuators like motors (DC/brushless), LED/LCD and HMI interfaces, speakers, sensors etc
● Experience working with motor control algorithms and PID controllers
- Proficiency with Linux OS and basic bash scripting
- Firmware Design and Development experience on different micro-controllers.
- C/C++ programming
- Linux Commands Operating System Concepts
- board bring up, embedded software, Kernel Build, Yocto
- Shell scripting Networking Concepts Openwrt OS Concepts
- Must have good Communication and Presentable skills.
- Experience on any Wifi, Bluetooth, GSM modules is a plus.
- Design, develop, code, test and debug system software.
- 32-bit Microcontroller knowledge is essential (ARM Cortex based micro-controllers (STM32).
- Esp32 architecture knowledge is essential.
- Strong experience in C, C++, Free-RTOS
- Strong experience in CUBEMX IDE, MDK Version 5 – Keil, Arduino IDE environment
- Good knowledge in HW and communication protocols like CAN, SPI, UART, I2C, USB
- Good knowledge in TFT Displays and Sensors is added advantage
- Good knowledge of implementation of motor controls as required, pulse width modulation schemes (PWM).
- Good knowledge of power electronics (TRIACs, MOSFETs, IGBTs, gate drivers) and require protections (Over/under voltage/current).
- Document firmware designs, specifications, test plans, revisions and produce test reports
About the role
Experience in Firmware/Software programming in embedded Linux & RTOS based application development. Candidate must have a very good understanding of ARM processor, hardware and custom board or product development experience.
Roles and Responsibilities:
- Design, code and integrate software for an embedded Linux/RTOS targeted application (applications, drivers, framework)
- Customization, deployment and maintenance of Linux distribution
- Interact with Linux kernel, integrate new device drivers Improvement and maintain existing software components
- Perform unit test, Integration test, verification and validation of the product developed.
- Assist with the hardware design surrounding the processor
- Document the projects according to standards (protocols, architecture, technical specifications, etc.)
Qualifications:
- Bachelor degree in Electronics or computer science engineering.
- Minimum 6 - 12 years of experience in embedded Linux programming.
Specific skills:
- Expert in C programming with RTOS.
- Hands-On experience with Protocol development.
- Nice to have Protocol development experience such as USB or DP, HDMI or equivalent.
- System level design and understanding of overall system
- Strong knowledge of Linux, ARM processor architecture with SOC, FPGA interface is a plus.
- Hand-on experience on Linux kernel and device-driver development and debugging.
- Knowledge/Experience of TCP/IP, Network programming.
- Ability to write effective and reusable code according to best practices.
- Must be a dynamic, autonomous, and team-oriented individual.
- Knowledge of hardware and low-level development is an asset.




Developer Software (Embedded)
Location: Udaipur
Qualification: BE in (Electrical/Electronic Engineering)
Technical
· Experience in design and development with structured Software Development Life Cycle for embedded applications
· Proficiency in C language or assembly programming, Microcontroller, Micro Processor.
· Preferably experience in working and understanding the metering domain
· Proficiency in development processes, tools/IDE (KEIL, IAR, Eclipse) & test automation
· Unit testing skill
· Interface RS485, RS232, SPI, I2C, USB, LCD, Keypad, Flash, EEPROM
· Coding Standards and MISRA rules are preferable
· Knowledge of ARM / MIPS / Coldfire / MSP430 / dsPIC / 8051 and other popular processor
· Experience in working on communication products based on GPRS, ZIGBEE, ZWAVE, Ethernet, Power line communication, DLMS, MODBUS
Job Description
· Understand improvement requirements and develop improvement solutions & package, according to technical specifications / high-level solution design
· Responsible to carry out effective and timely unit testing, in order to, deliver first time right solutions
· Development of automation framework/compiler / emulators to speed up business delivery cycle in NPI programs
· Keep track of new trends, continuously learn and self-develop skills by ensuring effective knowledge sharing through group meetings and training. Impart training to new joiners as and when assigned
· Proficiency in developing embedded software design with high reusability using relevant tools and BSM or flow diagram

- Perform technical feasibility studies of new technologies and architectures, including evaluation of OTS cloud offering.
- Generate entire software image for the target device, including the kernel, device drivers, libraries, and application software, and the bootloader for proprietary IOT connectivity device(s).
- Software packaging with RPM building and management
- Define the process to upgrade the new Linux package to existing hardware at customer premises
- Configuration and Troubleshoot of the proprietary IOT connectivity devices for internal R&D teams during their development and verification
- Automate the creation and distribution of keys and certificates
- Understand, implement, and automate security controls for IoT connectivity devices.
- Tune server and application-level performance monitoring and alerting.
- Help define our roadmap and architecture based on technology and business needs, considering architectural issues and tradeoffs
- Understand and manage integration points with other systems that interface with your applications
- Supports development of project plans, including scope, budget, schedules, and risk management.
- Works closely with the business analysts, software development and verification team, the functional manager, and the program manager.
- Collaborate and work with global teams in multiple locations.
- Interface with Global Privacy and Security team for the IoT Gateway understand security risks and recommendations and provide solutions to mitigate the security risks
- Bachelor’s degree in Computer Networking / Computer Science / Software Engineering or a related field
- 12+ years of hands-on experience in Networking, shell scripting, and Linux internals, with a development background.
- Strong understanding of Networking concepts like VPC, Route tables, Host base router firewall, SSH, NAT, DNS, DHCP, SNMP, Virtual IPs, VPN
- Linux System Administration and Networking work experience
- Configuring Firewalls(IP tables/firewall) and security software
- Able to generate Linux packages, and configure based on business needs.
- Passion for cybersecurity. Ability to build secured Linux packages with antivirus and security patches.
- Shell, Python scripting experience
- Basic SQL skills
- Ability to work with cross-functional and remote teams. Must be able to communicate in English, both written and verbal.
- Interpersonal skills to effectively collaborate with vendors and customers.
- Experience with Agile Scrum
- Development background in Java/C++
- DevOps knowledge
- Knowledge on javascript



