
Embedded Engineer

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

Skills Required:
- Good experience with programming language Python
- Strong experience in Docker.
- Good knowledge with any of the Cloud Platform like Azure.
- Must be comfortable working in a Linux environment.
- Must have exposure into IOT domain and its protocols ((Zigbee & BLE ,LoRa,Modbus)
- Must be a good team player.
- Strong Communication Skills


We are looking networking professionals with the following skill set,
Experience :6+ years of experience in the networking domain
Key skills:
- Must have 6+ years of experience in C/C++ programming language.
- Knowledge of Go programming language and Python programming language is a big plus.
- Strong background in L4-L7 Internet Protocols TCP, HTTP, HTTP2, GRPC and HTTPS/SSL/TLS.
- Background in Internet security related products such as Web Application Firewalls, API Security Gateways, Reverse Proxies and Forward Proxies
- Proven knowledge of Linux kernel internals (process scheduler, memory management, etc.)
- Experience with eBPF is a plus.
- Hands-on experience in cloud architectures (SaaS, PaaS, IaaS, distributed systems) with continuous delivery
- Familiar with containerization solutions like Docker/Kubernetes etc.
- Familiar with server less technologies such as AWS Lambda.
- Exposure to machine learning technologies and distributed systems is a plus
- 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

Strong in Basic C++, STL, Linux
OOPs, Exception Handling
Design Pattern and Solid principles, concepts related to UML representation
• Solution, design, and architecture concepts
• Knowledge on Pointers and smart Pointers.
• IO streams, Files and Streams and Lambda Expressions in C++ added advantage.
• Features of C++17 and usage of STL in C++ is added advantage.
• Templates in C++.
Communication skill, Attitude, learnability

Location: Bangalore
Experience: 4 to 12 years
JD:
- Familiar with AUTOSAR BSW and RTE, architecture, specifications, and configuration tools
- Strong fundamentals programming in C, embedded system concepts, and software build process
- Strong customer orientation, willingness to meet deadlines, and self-management skills
- Deep passion for solving problems to resolution, including root cause analysis skills
- Ability to work and collaborate in a dynamic team environment
Knowledge of Embedded system architecture such as memory hierarchies,vector
Processing.
Experience in resource /load sharing and synchronisation techniques for multi - core
processing.
knowledge of embedded processor internals.
Automotive domain Experience.
Responsibilities and Duties
The team leader will be leading a team of Hardware engineers, firmware and testing engineers. Being a team leader, you will primarily be responsible for fast and accurate delivery from the team which might even include handholding of team members whenever needed. Embedded team would be responsible for the following:
Hardware Design including
- Circuit design as per design requirements
- Schematic capture in the tool
- CAD layout
- QA/QC/functional testing
- PCB assembling and rework
- Lab inventory management
- Component procurement.
Firmware Design Including
- Firmware Design and architect
- Software Development
- Firmware Testing
- Code management over svn
Other Responsibilities
- The team leader would also be responsible for architecting the system, creating detailed design documents as per requirement and maintaining quality control of all the deliverables.
- The team leader would also be required to create a detailed test plan and list of test cases to be executed and if needed, create proper environment for the same.
- Ownership of the ‘ground up’ design and architecture of embedded software for real time applications.
- Decomposition of designs in to structured modules/functions ready for implementationby yourself and the team.
- Hands on development in C of new ARM based embedded software for a range of products currently under development
- Ensure quality of software using appropriate methods(Code Review, Static Analysis, Unit Test etc.) and application of suitable Coding Standards
- Maintain, update and enhance existing embedded software written in C
- Documentation of software products, development and execution of test plans
- Work closely with other members of the engineering team to assist with the correct choice of processors and supporting hardware
Required Experience, Skills and Qualifications
- Experience of 8+ years in field of embedded systems designing and developement.
- Familiar with usage of various LAB instruments.
- Strong fundamentals of electronics (Digital and analog) are must.
- Well versed with circuit designing and HW debugging
- Analog and Digital Circuit designing: familiarity with micro-controllers, memories, communication interfaces, op-amps, comparators, relays, inductors and capacitors, Handling EMI and Noise issues associated with circuits.
- Understanding of BLE protocols will be required.
- Understanding of scientific methodologies of experimentation, data-gathering and interpretation and hypothesis.
- Understanding of basic architecture, debugging of sensors.
- Experienced in embedded-C coding, memory allocations.
- Experience with any RTOS designing preferably with FreeRTOS at least with Semaphores, SW Timers, synchronisation and event handlings, task handling and prioritization.
- Understanding of micro-controller architecture, programming and debugging methodologies, interrupt-handling.
- Experience with any of the IDEs and debuggers for ARM architecture.
- Basic understanding of assembly programing of ARM architecture
- Understanding of basic peripherals like UART, CAN, I2C, Timers, Counters, PWMs, ADCs, DAC.
- Experience/knowledge in IoT devices (sensor, gateway, cloud) handling.
- Familiarity with CAD tools for schematics and layout generation.
- Experience on MS-Office.
- Familiarity in understanding and creating various test plans and documents.
General Skills Needed/ Requirements:
- Strong knowledge of components and should be able to suggest the team with right componenet
- Candidate must have a knack to use his/her technical knowledge to give it back to society.
- Candidates passionate to bring a change in society will be preferred with no compromise on pay check.
- Candidates must be open to work with communities to get feedback on product features so that products are best fit for social upliftment.
- Candidates must be open to travel to needy communities and should not hesitate to get his/her hands dirty to bring a change to the communities.
- Candidates must find associated with the cause and mission of the company.
- Open to work in open startup culture and give his/her 100%.
- Analytical reasoning and fact-based brainstorming capabilities will be highly preferred.
- Ready to relocate to Gurugram.
- Occasional field visits.




