Who are we looking for?
А Strong Embedded Software Engineer to join our growing team in Poland, interest in working on Pulse — an interactive classroom assistant that builds mindful motivation, self-regulation and human connection.
We are looking for experience in the following skills:
- 3+ years of experience in embedded software development for Android devices(especially layer connecting Android to the lower layers, native libraries, Linux kernel interfaces);
- Excellent knowledge of C/С++ language and experience in development for ARM64;
- Android architecture, from the bottom up to the services layers;
- Knowledge of AOSP organization and functionalities;
- Experience with Git;
- English — Upper Intermediate/Advanced — this point is a must, since part of our team is located in the US.
Nice to have:
- Knowledge of Java;
- Experience with Linux kernel development;
- Experience with video and audio pipeline handling (video processing, streaming, encoding/decoding);
- Experience with advanced video processing algorithms;
- Experience working with OpenCV;
- Knowledge of how to use basic electronics measurement equipment.
Your responsibilities
- You will be responsible for delivering low level layer for Android based embedded devices. That includes ensuring all the interfaces and glue logic to the upper layers.
- Work will include modifications of the existing code to fit interfaces provided by Linux layer, but there could be some implementations using NDK, even from scratch.
- There will be, as for the prototype phase, a lot of fixing and mysterious debugging, working with external vendors, or even admitting that they’re right!
- Quality and documentation is also a big thing for us, so you will have to be sure that your work meets (and exceeds) expectations of our customers.
- There might be the case when soldering iron in your hand would make things easier, but it’s not something we expect, rather a nice addition. We’re working in small groups, syncing on a daily basis, so you’ll never walk alone, but creative thinking and ability to create and follow a roadmap for your work will be highly appreciated.
What can we offer you:
- A well-established system for transferring experience and active use of engineering practices (Code Review, etc);
- Opportunity to influence the software development process;
- Working with a highly professional team who has a large experience in developing;
- Flexible management and working hours;
- Continuous professional development (free internal and external professional training);
- Professional growth with a mentor from our team;
- Good compensation package: gym, English courses, training budget, paid vacation and sick leave.
Recruitment Process :
The recruitment process contains 3 stages:
- Technical interview;
- HR interview;
- Final interview.
The process should end within two-three weeks. We value transparency and communication, so we always provide feedback.