Job Description
Industry: IT Services and IT Consulting
Seniority for this role: Mid-Senior level
Company Description Technology is our how. And people are our why. For over two decades, we have been harnessing technology to drive meaningful change. By combining world-class engineering, industry expertise and a people-centric mindset, we consult and partner with leading brands from various industries to create dynamic platforms and intelligent digital experiences that drive innovation and transform businesses. From prototype to real-world impact – be part of a global shift by doing work that matters. Job Description Development is the largest discipline at Endava. Our developers design, build, and release software products in multiple programming languages, frameworks, and libraries. Always collaborating with cross-functional project teams, our developers are adaptable problem-solvers with a client-oriented mindset. We are looking for a Camera System-Level Android Engineer to join one of the multiple well-organized scrum teams working on the android-based firmware/OS for video bars and tablet controllers. We hope you can bring your expertise and contribute to both the maintenance of the existing functionalities and new feature development. A sense of ownership and proactivity is more than welcome. Our client is a famous tech company that among other products also creates beautifully designed and engineered audio and video products, backed by the artificial intelligence, analytics, and insights to take you far beyond mere connectivity and let you be seen and heard with incredible clarity. This is a hybrid (remote/office) position. Mostly, there is no frequent need to exchange the equipment and hard dependency on office space, but the account team comes two times per week to satisfy project needs and make sure that social part is not being missed. Responsibilities: Develops software components following IT industry standards, tools, and practices. Participates in all activities of application development such as backlog refinement, estimation, implementation of the requirements, etc. Collaborates with project stakeholders to understand the client requirements, architecture, and priorities. Escalates risks, issues, and concerns related to development activities. Participates in the review of the work done by development team members. Learns and applies new technologies, practices, and tools as appropriate to the project. Participates in internal tech communities, events, etc. Qualifications Key requirements: 4-10 years of experience in C/C++ development Experience with any of embedded Linux distributions like Yocto, Buildroot, or OpenEmbedded for creating custom Linux images Familiarity with camera interfaces such as USB (UVC), MIPI CSI, HDMI, and Ethernet (RTSP, RTP). Familiarity with image formats JPG, PNG and RAW and video compression standard h.264, h.265 Good understanding of different common programing paradigms (OOP, Functional, etc.). Familiar with design/architectural patterns and clean code principles Understanding of version control systems like Git or similar Experience with testing and mocking frameworks Familiar with communication protocols and standards such as HTTP, REST, JSON, TCP/IP. Basic knowledge of Agile methodologies (e.g., SCRUM, KANBAN). Basic Knowledge of CI/CD tools and practices Good problem-solving skills and analytical thinking Excellent communication and teamwork abilities Intermediate English proficiency, at least Educational background in computer science or equivalent In addition to the essentials, it would be great if you have: Experience in Android (AOSP) development Knowledge of Android Camera HAL, Camera Manager, binder, HIDL, AIDL Gstreamer or OpenCV experience Experience with drivers, especially with V4L2 Knowledge of FFmpeg for video manipulation, transcoding, and streaming Knowledge of the Android SDK/NDK, Connectivity, Permissions, so as SELinux, networking protocols and TLS is very beneficial Additional Information Discover some of the global benefits that empower our people to become the best version of themselves: Finance: Competitive salary package, share plan, company performance bonuses, value-based recognition awards, referral bonus; Career Development: Career coaching, global career opportunities, non-linear career paths, internal development programmes for management and technical leadership; Learning Opportunities: Complex projects, rotations, internal tech communities, training, certifications, coaching, online learning platforms subscriptions, pass-it-on sessions, workshops, conferences; Work-Life Balance: Hybrid work and flexible working hours, employee assistance programme; Health: Global internal wellbeing programme, access to wellbeing apps; Community: Global internal tech communities, hobby clubs and interest groups, inclusion and diversity programmes, events and celebrations. Show more Show less