Android Engineer at Citizen
Citizen’s mission is to protect the world by building a global safety network of people protecting each other via our free iOS/Android app. The network is powered by technology that generates instant alerts about public safety emergencies—as they occur. Each incident on the platform creates a temporary local network of people who use the Citizen product to protect each other, broadcasting live video and communicating with others nearby.
We’re looking for passionate, mission-driven individuals to help take the Citizen app to the next level as we scale up new cities and expand globally.
Citizen is backed by Sequoia Capital, 8VC, and Founder’s Fund.
- Scaling: We have one of the fastest growing organic user bases in NYC, and right now we’re geo-restricted to New York City and San Francisco. Soon we will launch nationwide and we need to support that scale. A Citizen international launch will follow.
- Mobile video streaming: Our app will ingest high-quality video at low-latency, transcode, and redistribute the video to external media outlets seamlessly.
- Extracting signal from noise: During major breaking news events, tensions are high and a lack of information persists. We build tools to raise facts and suppress noise.
Our Stack - languages and technologies we use and teach
- Mobile: Swift (iOS), Kotlin/Java(Android)
- Web: React.js
- Server: Go, Node (for isolated systems)
- Systems: MySQL, Redis, Kafka, BigQuery (for isolated systems)
- Infrastructure: Kubernetes on GCP
- Android is a core offering, not just a follow-on to iOS. We want to be able to launch and experiment with new features on both platforms.
- Work with product managers and designers to iterate on and define product scope and design.
- Collaborate with iOS, Backend, and Data Science to build and launch new features, as well as re-architect and maintain existing features.
- Collaborate across Engineering with designs, code reviews, and whiteboard sessions. We strive to eliminate errors and wasted cycles developing code.
- Demonstrate rigor with code quality, best practices, and code review, while understanding product tradeoffs.
- Bachelor’s Degree in Computer Science or related field
- 2+ years experience developing, releasing, and maintaining high quality native Android applications
- Hands-on experience with Kotlin and/or Java
- Knowledge with Android UI design principles and accessibility best practices
- Experience with modern 3rd party libraries, frameworks, and services like RxJava, ButterKnife, AutoValue, Retrofit, Dagger, Crashlytics, and Amplitude, including when not to use one
- Experience shipping consumer focused apps that users love on the Play Store, you can show what you’ve owned
- Champions best practices to ensure performance, quality, and responsiveness for mobile applications
- Enjoys teaching and collaborating with others
Citizen offers a competitive benefits package including medical, dental, vision, flexible spending accounts, paid time off, company holidays, stock option plan, commuter benefits, and various wellness perks.