
Job Summary:
We are looking for a highly skilled and experienced C++ Developer with a strong background in embedded systems to join our dynamic product engineering team. The ideal candidate will have at least 5 years of recent hands-on experience in designing, developing, and optimizing high-performance embedded software applications using modern C++ standards (preferably C++11 or later). This is an exciting opportunity to work on cutting-edge technologies in a collaborative and innovative environment.
Key Responsibilities:
- Design, develop, and maintain robust and scalable software solutions using C++11 or above
- Work closely with hardware and embedded teams to implement and integrate real-time systems
- Develop software for embedded platforms and optimize performance for various target environments
- Implement and maintain multithreaded applications and handle concurrency issues efficiently
- Conduct unit and integration testing to ensure high-quality deliverables
- Collaborate with cross-functional teams including Product, QA, Hardware, and Design
- Troubleshoot, debug, and resolve complex technical issues in embedded environments
- Participate in code reviews and adhere to best practices in coding and documentation
- Stay updated on the latest advancements in C++ and embedded systems development
Required Skills & Qualifications:
- Bachelor's or Master’s degree in Computer Science, Electronics, or related field
- 5+ years of professional software development experience with strong recent exposure to C++
- Hands-on experience with C++11 or newer versions (C++14/17 preferred)
- Strong understanding of object-oriented programming (OOP) and software design patterns
- Proficient in embedded system programming and real-time operating systems (RTOS)
- Experience in multithreaded programming and inter-process communication
- Proficient in debugging tools, performance analysis, and memory management
- Familiarity with version control systems like Git
Preferred Skills:
- Experience working on low-level drivers, hardware integration, and peripherals
- Familiarity with scripting languages (Python, Bash) for automation
- Exposure to CI/CD pipelines and Agile/Scrum development methodologies
- Knowledge of tools such as GDB, Valgrind, JTAG debuggers, etc.
- AWS or cloud-based experience is a plus (for remote monitoring/logging or OTA updates)

Similar jobs
- Experience: 4.5 to 10 Years.
- Notice Period: Immediate to 15 days.
- Location: Bangalore.
- Budget:
- 4.5 to 6 Years: 14 LPA.
- 6.5 to 9 Years: 18 LPA.
Skills/Qualifications Required:
- Strong knowledge of Android Architecture with experience in Java and C/C++.
- Working experience in Android Generic Frameworks.
- Hands-on experience with GIT/Gerrit and resolving conflicts while applying AOSP patches.
- Proficiency in analyzing ANRs, tombstones, and system crashes.
- Experience with analyzing Google compliance issues (STS, CTS, GTS, VTS).
- Hands-on experience with JIRA.
- Expertise in Binder IPC, Manager Service, System Services, AOSP customization, and custom ROM development.

C++ coding and debugging to strengthen and optimize systems.
○ Design and architecture (HLD/LLD) to ensure scalable and robust solutions.
● 10–15 years in the tech industry, with 2–4 years in technical leadership or managerial roles.
● Technical Expertise: Expertise in C++ development, enterprise architecture, andscalable system design, and proficiency in performance optimization, scalability,software architecture, and networking principles.
Extensive experience managing the full development lifecycle of large-scale softwareproducts, from concept to deployment.
● Strong knowledge of STL containers, multi-threading concepts, and algorithms.
Solid understanding of memory management and efficient resource utilization.
● Microservices Architecture Expertise: Experience in designing and implementing
scalable, reliable microservices.
● Strong Communication & Decision-Making Skills: Ability to clearly articulate
trade-offs, make informed decisions, and ensure alignment across stakeholders.
● Commitment to Creating and fostering Engineering Excellence: Deep
understanding of best practices, including code quality, testability, security, and
release management, and passion for fostering a strong engineering culture and
continuously improving developer workflows and tools.
● Self-Driven and Motivated: Ability to operate independently while driving impactful
results.
JD:
As a Staff Software Engineer, you will be responsible for the design, implementation and maintenance of software modules owned by a team. You will guide and mentor junior team members by reviewing their code and designs to ensure that they are writing well designed and high quality code. This role requires excellent communication skills as you will need to collaborate across teams.
Key Skills:
- 3 to 6 years of experience
- Extensive experience on C/C++/Python
- Experience on OS - Unix/Linux and Windows
- Hands on experience in Networking and Multi-threading
Desirable Skills:
- Experience in Cloud Technologies, system programming is a plus
Roles and responsibilities:
- Play key role in design/development of security product.
- Responsible for the complete software development cycle.
- Gathering & understanding requirements.
- Design, development & implementation independently.
- Responsible for ensuring timely and quality delivery.
- Will be able to work in end to end features.
Qualification:
- B.Tech / B.E / M.E./ M.Tech (Computer Science) or equivalent.
Role- Software Development Engineer-2
As a Software Development Engineer at Amazon, you have industry-leading technical abilities and demonstrate breadth and depth of knowledge. You build software to deliver business impact, making smart technology choices. You work in a team and drive things forward.
Top Skills
You write high quality, maintainable, and robust code, often in Java or C++ or C#
You recognize and adopt best practices in software engineering: design, testing, version control, documentation, build, deployment, and operations.
You have experience building scalable software systems that are high-performance, highly-available, highly transactional, low latency and massively distributed.
Roles & Responsibilities
You solve problems at their root, stepping back to understand the broader context.
You develop pragmatic solutions and build flexible systems that balance engineering complexity and timely delivery, creating business impact.
You understand a broad range of data structures and algorithms and apply them to deliver high-performing applications.
You recognize and use design patterns to solve business problems.
You understand how operating systems work, perform and scale.
You continually align your work with Amazon’s business objectives and seek to deliver business value.
You collaborate to ensure that decisions are based on the merit of the proposal, not the proposer.
You proactively support knowledge-sharing and build good working relationships within the team and with others in Amazon.
You communicate clearly with your team and with other groups and listen effectively.
Skills & Experience
Bachelors or Masters in Computer Science or relevant technical field.
Experience in software development and full product life-cycle.
Excellent programming skills in any object-oriented programming languages - preferably Java, C/C++/C#, Perl, Python, or Ruby.
Strong knowledge of data structures, algorithms, and designing for performance, scalability, and availability.
Proficiency in SQL and data modeling.
● A Bachelor’s degree in Computer Science or equivalent combination of technical education and
work experience
● 5 to 9 years of Software Development experience
● Experience in system design, distributed systems, relational and No-SQL databases.
● Strong, object-oriented design and coding skills (C/C++ and/or Java preferably on a UNIX or Linux
platform)
● Solid software development background including design patterns, algorithms, data structures,
test driven development
● Any previous experience in working with Big Data or leveraging machine learning in improving
consumer experience is desirable.
● Excellent verbal and written communication skills
Need Backend developer who has done projects in Golang, C
- discussing clients’ requirements and proposed solutions with a senior developer (for developers at mid-skill level and below)
- writing and testing code
- collaborating with other developers
- using development tools (see below)
Development tools are used by software developers to write and test code, often as a team. Common development tools include:
- integrated development environments (eg Eclipse, IntelliJ): for writing and editing code
- source control management (eg Git, SVN, Mercurial): to enable teams to work together to manage changes to source code
- issue management systems (eg Jira): for managing a list of issues or improvements
- test driven development: for writing code to test your code







