You will be joining the team destined to make Alfred one of the best home monitoring experience available in the market.
You will become a member of the development team who are capable of working on different platforms to enhance the features for Alfred as a whole. You will work on new product line-ups as well incorporating new technologies into the platform in order to facilitate the rapid growth of the company. You will also need to integrate various 3rd-party software modules, creating your own implementation based on specification, address interoperability issues between platforms and write specification/design documents in English.
Instead of calling Alfred a mobile app, you may as well think of Alfred as a piece of embedded software that controls devices. Essentially, we put the software in the form of an app in smartphones so that we can use them as security cameras!
To achieve this is no small feat. We use a blend of languages including Swift, Java, C language, and ARM assembly to control from CPU to GPU. We research CPU instructions and OS pipelines so that Alfred can run on older phones (dating back 7-8 years) to deliver the best multimedia performance.
Alfred is the only app that runs 24/7 a day and 365 days a year. Alfred doesn’t take a break. Alfred can’t make any mistakes. It is our job to make sure that Alfred can run on over 20,000 phone models and function perfectly.
A large part of Alfred’s challenge lies in the fact that we do not have the luxury to inspect users’ devices. That is why the Alfred team has to learn how to serve users, overcome these challenges, work in different conditions, and optimize user experience. Would you take on this challenge with us?