Meta Platforms, Inc. (Meta) is looking to build the next evolution in social technology by moving beyond 2D screens toward immersive experiences like augmented and virtual reality. This role will help build new, innovative hardware and software that radically redefine the way people work, play and connect, and help lead and set direction in how Meta Reality Labs develops its future capabilities to deliver best-in-class VR devices.
Requirements
- Software development with a focus on Android or embedded systems
- Writing and debugging code in Java and Kotlin
- Android Software Development Kit (SDK) and Native Development Kit (NDK) for building applications and system components
- Working with AOSP (Android Open Source Project), including building custom ROMs, modifying system components, and integrating third-party features
- C/C++ Programming: C/C++ for system-level programming and performance-critical code
- Linux kernel architecture
- Memory management techniques and optimization strategies to ensure efficient performance of applications
Responsibilities
- Help build new, innovative hardware and software that radically redefine the way people work, play and connect.
- Help lead and set direction in how meta reality labs develops its future capabilities to deliver best-in-class VR devices.
- Develop APIS in the system-level framework layer that allow other layers of the stack to implement compelling and performant use cases.
- Collaborate with cross-functional teams of Partners, Product Managers and Engineers to build an end-to-end solution.
- Work with Application and Platform teams to debug functional, performance and stability issues across the stack.
- Build on OS internals.
- Set technical direction for significant improvements.
Other
- Requires a Bachelor's degree (or foreign degree equivalent) in Computer Science, Engineering, or a related field and 3 years of work experience in the job offered or in a computer-related occupation
- Uplift coding and design skills on the team through reviews and introduction of best practices.
- Model behaviors through clean readable code, upfront debug-ability and testability when implementing complex components.
- Work closely with Product Management, Application Software Engineers and Partners to understand requirements, specify interfaces for new software frameworks, and enhance existing frameworks.
- Participate in design reviews and code reviews for the team.