Genius is hiring a

Full Stack Developer

Brooklyn, United States

Genius began as a website for decoding rap lyrics and has since evolved into the Internet’s best source for musical knowledge, with more than 40 million monthly unique visitors and tens of thousands of contributing users. Our mission is to be the layer on top of culture that helps you understand and appreciate it—in other words, to “annotate the world.”

Engineers at Genius have an unusual amount of leverage. Although we’re working on a huge project, and although we’ve raised more than $55 million, we’re still a small team. So every engineer is intimately involved in the product planning process. You’ll never work on a feature that you don’t think is a good idea to build.

Full Stack Engineer

Full stack engineers at Genius architect and implement new features. We’re looking for makers with a sophisticated code sense: folks who’ve built cool things, but who can also maintain and scale those things, and who feel at home deep in the guts of a library.

The best candidates will have professional experience on a web stack with millions of users, but there are no hard requirements for the job. We don’t care which languages and tools you use, just that you’re fluent with them. Facility with Ruby and Rails is a plus, but the “full stack” involves a lot of technologies: frontends, APIs, databases (relational and not), job queues, etc. So the main thing is to be versatile and relentlessly curious.

Responsibilities

  • Build and maintain web application features, primarily with Rails
  • Work closely with application infrastructure to scale backend services to tens of thousands of requests per minute
  • Develop the APIs that our Android and iPhone apps and web frontend consume
  • Create frontend interfaces with HTML, CSS, and Javascript (including Angular)
  • Write PostgreSQL queries and migrations that scale to large tables with 50M+ rows
  • Work closely with product team to define feature specifications
  • Occasional on-call duty to respond to urgent bugs or outages

Example Projects

  • Design an activity stream scalable to 100M+ events and a filterable “firehose” interface for consuming them
  • HTTP-cache all pages at the edge for logged-out users only
  • Write Javascript that can run robustly in any other website’s JS and CSS environment
  • Develop a system for anchoring annotations to arbitrary DOM that can change out from under you
  • Calculate document ownership based on edit history with hundreds of distinct authors
  • Develop representation for rich text that’s portable to native iOS and Android environments
  • Create framework for caching partial templates
  • Design a domain-specific language and implementation of site-wide rate limits for spammy or abusive behavior
  • Fingerprint artist names to prevent duplicate data with low false-positive rate

 

Learn more about our engineering team with DevPost