Are you applying to the internship?
Job Description
Senior Software Engineer(RTP/RTCP, Embedded, C, RTOS, Linux) | Motorola Solutions
The Tone:
This is a full-time role at Motorola Solutions, where we believe everything starts with our people and are united by the relentless pursuit to help keep people safer everywhere. We build and connect technologies to protect people, property, and places, fostering the collaboration critical for safer communities, schools, hospitals, businesses, and nations. This role is vital to developing a cutting-edge mobile communication platform for frontline workers, transforming communication, collaboration, and operations in fast-paced industries.
The TL;DR
• Role: Full Time
• Location: In-person, Bangalore, Karnataka, India
• Team: Theatro a Motorola Solutions Company
• Mission: Develop high-performance, scalable, and maintainable software to enhance the Theatro mobile communication platform for frontline workers.
• Tech Stack: C, C++, C++11/14/17/20, Python Scripting, Shell Scripting, Linux, TCP, UDP, RTP, RTCP, Make, CMake, GDB, Valgrind, STL, ACE (C++) Framework, SVN, Git, Jira, G711, G722, Opus, relational databases, non-relational databases
What You’ll Actually Do
• Analyze and Develop: Analyze, develop, design, and maintain software for the organization’s products and systems, integrating software and hardware for throughput and program consistency.
• Implement and Optimize: Implement and optimize multi-threaded, memory-efficient code using modern C++ standards.
• Debug and Resolve: Analyze and debug complex software issues using tools like GDB, Valgrind, and application logs, then capture root cause analysis.
• Test and Validate: Perform unit, integration, and system testing to validate code correctness, and develop structures and user documentation.
• Support Releases: Participate in software releases and assist in deployment troubleshooting as needed.
The Must-Haves
• Background: Bachelor’s degree in Computer Science, Electronics & Communication, Electrical Engineering, Information Technology, or a related technical discipline. Possess a strong academic foundation in data structures, algorithms, operating systems, and computer architecture.
• Experience: 4 to 6 years of experience.
• Skills: Strong proficiency in C and C++ with multithreading and networking experience, including a good understanding of TCP and UDP protocols. Solid understanding of object-oriented design, STL, and modern C++ idioms, alongside Python and Shell scripting. Working experience in a Linux environment with knowledge of Linux commands, problem solving, and debugging tools like GDB and Valgrind. Proficient in using Make and CMake for building and managing large-scale C++ projects, including writing custom build scripts and managing complex dependency trees.
• Bonus: Good understanding and hands-on experience with RTP and RTCP protocols. Familiarity with source control tools like SVN and Git, and project tracking tools like Jira. Knowledge of audio codecs such as G711, G722, or Opus. Experience in VoIP, telecom, or IoT platforms. A Master’s degree (M.Tech/M.S/MCA.) in a relevant field. Good to have hands-on experience with the ACE (C++) Framework and a good understanding of relational and non-relational databases.