Chennai, Tamil Nadu, India
Information Technology
Full-Time
Ola
Overview
Embedded Software Engineer
About the Role: We are seeking a highly skilled and hands-on C/C++ Developer to join our team for an exciting role focused on code optimization and platform porting. The ideal candidate will have strong experience in optimizing C/C++ code, working with memory profiling, and porting code across different hardware platforms, particularly focusing on Qualcomm boards and other embedded systems.
Key Responsibilities:
- Code Optimization: Work on optimizing C/C++ code for performance, memory usage, and power efficiency.
- Platform Porting: Port code from one hardware platform to another (e.g., Qualcomm to other embedded systems), ensuring cross-platform compatibility and optimal performance.
- Memory Profiling: Use memory profiling tools to analyze and optimize memory usage and system resource consumption.
- System Tuning: Analyze system bottlenecks and implement solutions to improve overall system performance (e.g., CPU, memory, and power).
- Debugging & Troubleshooting: Identify and debug performance issues related to system hardware, software interactions, and memory management.
- Collaboration: Work closely with hardware engineers to understand platform constraints and ensure efficient code execution on target devices.
- Testing & Validation: Conduct thorough testing and validation of optimized code on different platforms, ensuring robustness and stability across various use cases.
- Documentation: Maintain proper documentation for optimization techniques, platform porting, and code changes.
Required Skills:
- C/C++ Programming: Strong hands-on experience with C and C++ programming languages, including low-level optimizations and debugging.
- Embedded Systems: Solid understanding of embedded system architecture, particularly working with Qualcomm SoCs or other similar embedded platforms.
- Memory Profiling & Optimization: Experience using memory profiling tools (e.g., Valgrind, gprof, or similar) to identify and optimize memory issues.
- Cross-Platform Porting: Experience porting code between different hardware platforms, with expertise in managing platform-specific dependencies and constraints.
- Performance Tuning: Strong background in optimizing code for system performance, including CPU cycles, memory, and power consumption.
- Multithreading & Concurrency: Familiarity with parallel programming, multi-core optimization, and synchronization mechanisms in embedded systems.
- Version Control: Experience using version control systems (e.g., Git) for source code management.
Preferred Qualifications:
- Degree: B.Tech in Computer Science, Electronics, or a related field.
- Experience with Platforms: Hands-on experience working with Qualcomm processors or similar embedded platforms.
- Linux/RTOS: Familiarity with Linux or Real-Time Operating Systems (RTOS) in embedded environments.
- Toolchain Knowledge: Familiarity with embedded development toolchains such as GCC, Clang, and debugging tools like GDB.
- Profiling Tools: Experience with advanced profiling and debugging tools like Valgrind,perf, oprofile, and memory leak detectors.
Personal Attributes:
- Ability to work independently and as part of a collaborative team.
- Eagerness to stay updated with the latest trends in embedded systems, optimization techniques, and new hardware platforms.
Similar Jobs
View All
Talk to us
Feel free to call, email, or hit us up on our social media accounts.
Email
info@antaltechjobs.in