Senior Mobile Engineer, DevOps
Posted on 2/1/2022
Development Operations (DevOps)
- Our Transition to React Native
- How Engineering Principles Can Help You Scale
- How to upgrade hundreds of React components without breaking production
- Building native iOS and Android mobile apps and working with React Native
- App store-related tasks (for both the Apple App Store and Google Play Store)
- Creating, running, and supporting build pipelines (Bitrise, Github Actions)
- Package managers and dependency management (NPM, Cocoapods, Maven)
- Supporting (and, ideally, automating) release processes
- Strong knowledge of building and maintaining Node.js tooling
- Doing Continuous Integration mobile releases with React Native (for example with CodePush)
- Doing mobile end-to-end testing using Appium or similar technologies
- Creating and maintaining development tooling (including Github Actions, build processes, and local dev environment)
- Integration with external translation services like CrowdIn
- Integration and monitoring of error-tracking services like Sentry
- Strong technical project management skills, as our Senior Software Engineers often lead projects
- Experience building and maintaining complex software. You'll join us in writing clean, maintainable software that solves hard problems. You'll write testable, quality code. You'll push the team and the mission forward with your contributions
- Strong communication, thoughtfulness, and desire to give and receive regular feedback
- Empathy for learners around the world. You love learning and are excited about helping others learn to love learning. You're motivated to learn new things and share what you learn with the world
- Excitement about helping Khan Academy bring a free, world-class education to the world
- Improving and maintaining the mobile development infrastructure including continuous build environments running in Bitrise and triggered from GitHub
- Owning the build process for Android and iOS mobile clients, including submitting builds to their respective app stores
- Troubleshooting and debugging build issues with a focus on resolving problems quickly with minimal impact to developers and QA
- Building tools to improve developer productivity, contributing ideas to continuously improve our systems and drive actionable feedback on code and product quality
- Monitoring and managing mobile app reliability, availability, and performance
- Managing translation pipelines and coordinating with our translation team for releases
- Supporting and troubleshooting Linux and MacOS, and underlying applications and networking stacks
Khan Academy's mission is to provide a free, world‑class education for anyone, anywhere.
- Competitive salaries
- Health and wellness benefits
- Flexible time off
- 401(k) + matching
- Affinity groups
- Paid parental leave
- Fun virtual events
- Live and breathe learners - We deeply understand and empathize with our users. We leverage user insights, research, and experience to build content, products, services, and experiences that our users trust and love. Our success is defined by the success of our learners and educators.
- Take a stand - As a company, we have conviction in our aspirational point of view of how education will evolve. The work we do is in service to moving towards that point of view. However, we also listen, learn and flex in the face of new data, and commit to evolving this point of view as the industry and our users evolve.
- Embrace diverse perspectives - We are a diverse community. We seek out and embrace a diversity of voices, perspectives and life experiences leading to stronger, more inclusive teams and better outcomes. As individuals, we are committed to bringing up tough topics and leaning into different points of view with curiosity. We actively listen, learn and collaborate to gain a shared understanding. When a decision is made, we commit to moving forward as a united team.
- Work responsibly and sustainably - We understand that achieving our audacious mission is a marathon, so we set realistic timelines and we focus on delivery that also links to the bigger picture. As a non-profit, we are supported by the generosity of donors as well as strategic partners, and understand our responsibility to our finite resources. We spend every dollar as though it were our own. We are responsible for the impact we have on the world and to each other. We ensure our team and company stay healthy and financially sustainable.
- Deliver wow - We insist on high standards and deliver delightful, effective end-to-end experiences that our users can rely on. We choose to focus on fewer things - each of which aligns to our ambitious vision - so we can deliver high-quality experiences that accelerate positive measurable learning with our strategic partners.
- Cultivate learning mindset - We believe in the power of growth for learners and for ourselves. We constantly learn and teach to improve our offerings, ourselves, and our organization. We learn from our mistakes and aren’t afraid to fail. We don't let past failures or successes stop us from taking future bold action and achieving our goals.
- Bring out the joy - We are committed to making learning a joyful process. This informs what we build for our users and the culture we co-create with our teammates, partners and donors.