Engineer, iOS
Citizen
 NY (New York)
About Citizen

Citizen’s mission is to protect the world. We began by opening the NYC and San Francisco 911 system to local Citizen app users, creating access to real-time crime and safety information. By increasing situational awareness and transparency, we are making communities safer than ever before.

Since our launch in New York, over 10% of New Yorkers have now used Citizen, and that growth is accelerating. We're now live in San Francisco, Los Angeles, Philadelphia, and Baltimore, with many more cities on the way. Citizen notifications have urged people to evacuate burning buildings, deterred school buses from nearby terrorist attacks and have even led to a rescue of a 1-year-old from a stolen car.

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. 

Our Challenges

  • Scaling: We have one of the fastest growing organic user bases in NYC and SF. Soon we will launch nationwide and we need to support that scale. A Citizen international launch will follow.
  • Bursting: Without warning, a major incident occurs and multiple users start live-streaming video. We notify our entire user base, causing a massive burst of simultaneously connected clients. The core systems we build need to efficiently support traffic that can grow to hundreds of thousands of concurrent users today, and millions in the future.
  • Analytics: We want to alert users to incidents that matter to them, in a way that scales across different geographic densities and demographics.
  • Mobile video streaming: Our app ingests high-quality video at low-latency and then transcodes and redistribute the video to external media outlets seamlessly.
  • FM radio: We use software-defined radios to consume all radio dispatch in NYC, SF and eventually every major city, whether analog, digital, or trunked.

Our Stack - languages and technologies we use and teach

  • Mobile: Swift (iOS), Java (Android)
  • Web: React.js
  • Server: Go, Node (for isolated systems)
  • Systems: MySQL, Redis, Kafka, Firebase (for isolated systems)
  • Infrastructure: Kubernetes on GCP

Role Description

  • Working in Swift at all levels – from networking and websockets to user interfaces and live video.
  • Demonstrating rigor with code quality, best practices, and code review.
  • Testing code with tools like XUnit.
  • Collaborating across engineering with designs, code reviews, and whiteboard sessions. We strive to eliminate errors and wasted cycles developing code.
  • Effectively manage our release cycles, balancing feature development with infrastructure investment. 
  • Collaborate with Android, Backend, and Data Science to build features.
  • Work with Product and Design to iterate on and define product scope and features.
  • Implement engineering processes and policies that emphasize quality and progress to shape the future of mobile at Citizen. 

Requirements

  • Bachelor’s Degree in Computer Science or related field 
  • 5+ years experience as a developer building applications, with 3+ years working on iOS applications. Experience building Android applications is a plus.
  • Proficient in Swift, or Objective-C, with a deep understanding iOS development best practices a plus.
  • Solid understanding of build tools like Carthage or CocoaPods.
  • Enjoys coaching and collaborating with others.
  • Experience building reusable components
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.


Citizen is proud to be an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all.