Description

 Job Description

In this position, you will be:

  • Technically lead the designing, developing, reviewing, and maintaining embedded software products.
  • Proactively lead all aspects of embedded software starting from pre-development, design prototyping, testing, and validation till maintenance.
  • Plan and execute multiple project requirements with changing priorities.
  • Review the code of junior developers to ensure that standard processes are followed in coding.
  • Ensure optimal performance, reliability, and resource utilization.
  • Communication Protocols: Implement and optimize communication protocols such as Ethernet, Modbus, or wireless technologies.
  • Resolve firmware and software issues.
  • Optimization and Performance tuning: Optimize code and algorithms for memory and processing efficiency.
  • Improve system performance and response times.
  • Documentation – Contribute to the creation and upkeep of various documentation materials, such as code comments, user manuals, and design documents.
  • Security and Safety considerations – Implement security features and adhere to safety standards relevant to the industry
  • Collaboration – Collaborate with cross – functional teams including hardware engineers, quality assurance, product managers, and solution architects.
  • Participate in design reviews and project meetings.
  • Experience with the use of JTAG debugging, logic analyzers, oscilloscopes, and other debugging techniques.
  • Experience with software tools such as repository management (Git/Subversion), Jira, static analysis, etc.
  • Continuous learning - Stay abreast of industry trends, evolving technologies, and standard methodologies in embedded development.

 

You have:

  • Academic background in Bachelor’s Degree or above in Electronics Or Computer Science/Electrical Engineering or equivalent.
  • 10 plus years of experience and extensive knowledge in architecture, design, and programming in an embedded systems environment
  • Ability to drive end-to-end development of embedded systems to achieve varying levels of requirements with respect to power consumption, performance, and code size.
  • Ability to identify root causes and resolve complex issues and bugs in firmware.
  • Expert knowledge of developing modular software using C/C++ in an embedded platform.
  • Experience working in Embedded Linux – Linux System Programming and Embedded Application development
  • Experience with system management and industrial protocols (SNMP, Redfish, BacNet, ProfiNet, EtherNet/IP)
  • Experience with RUST is an added advantage.
  • Knowledge on board bring up is an added advantage
  • Capable of understanding hardware/software interfaces and reading schematics
  • Familiarity with communication protocols
  • Experience in writing multi-threaded software, class libraries, uBoot, kernel, device drivers is desired.
  • Experience in software estimation techniques, technically leading and guiding the team.
  • Experience with CI/CD, static code analysis, unit testing tools, and cybersecurity aspects
  • Exposure to working with multi-site global teams

Education

Any Graduate