C/C++ Software Engineer — Tualatin, OR
Зарплата не указана
ОткликнутьсяWe are seeking an experienced Senior Software Developer with 5 years of strong expertise in C/C++ programming to join our team. The ideal candidate will have a proven track record in developing real-time applications, particularly in video streaming and hardware interface development.
Responsibilities
• Design, develop, and maintain real-time applications on Linux platforms using C/C++.
• Work with video streaming libraries like G-Streamer to develop robust streaming solutions.
• Integrate and manage USB and GMSL interfaces for camera systems.
• Apply Object-Oriented Programming (OOP) principles and follow SOLID principles for scalable software development.
• Design system architectures and implement efficient software design patterns.
• Develop and manage build systems using CMake for modular and efficient code compilation.
• Debug and resolve complex software issues in a real-time system environment.
• Use version control tools (e.g., Git) for collaborative development, branching, and version management.
• Participate in peer code reviews to ensure code quality, consistency, and adherence to best practices.
• Collaborate with cross-functional teams to understand project requirements and deliver high-quality software solutions.
Required Skills and Qualifications
• Programming Skills: Proficiency in C and C++ with a strong understanding of OOP concepts.
• Video Streaming Expertise: Hands-on experience with G-Streamer or similar video streaming libraries and codecs.
• Hardware Interfaces: Knowledge of USB and GMSL interfaces for camera integration.
• Real-Time Applications: Experience in developing applications with stringent performance and latency requirements.
• Version Control: Proficiency in using Git or similar tools for code versioning and collaboration.
• Code Review: Experience in conducting and participating in peer code reviews.
• Debugging: Excellent debugging and problem-solving skills in a Linux environment.
• Build Systems: Experience with CMake for managing build processes.
• Design Principles: Understanding of SOLID principles, system design, and software design patterns.
Drop your resumes: ••••••••