Senior Software Engineer - Distributed Systems
Why work at Grindr?
Grindr is among the top highest grossing apps in the iOS App Store and boasts some of the most engaged users across all social networking apps. We offer a fun, constantly evolving, agile startup environment that enables and rewards innovation, teamwork, and diligence.
Situated right in the heart of West Hollywood, we're the No. 1 location-based mobile social app on the market, and we cater to a massive user base of 3 million daily active users in every country in the world. Since our inception in 2009, we've been dedicated to finding new and better ways to connect people using mobile technology.
Grindr is looking for a Senior Software Engineer - Distributed Systems to join our platform team. The platform team is a flagship team at Grindr dedicated to performance, resiliency, and service isolation. We use load testing, failure testing, measuring, and experimentation to safely deliver fast and reliable services to our users. If you love to see your code in the hands of users and have a passion for bringing new products, features, architectures, and designs into the world, we want to speak with you!
This is a fast-paced, agile environment. Our team is passionate about their projects; we are collaborative and never settle for the status quo. Come join a team that is experimenting with new technologies and building new microservices (Greenfield) that can scale to 10 million daily active users.
Designing robust systems that anticipate failures and prior experience in building scalable systems are key to success here. The ideal candidate will have experience working with high traffic systems, a deep understanding of architecting for the cloud, and the empathy required to pair with junior engineers, sharing knowledge throughout the team.
- Champion new macro-architectures to power new platform capabilities
- Own the design and development of Grindr’s future isolated services following Domain Driven Design principles
- Drive a rigorous process that focuses on TDD, chaos testing, and load testing to deliver resilient services
- Work to ensure architectural coherence across the Grindr platform
- Optimize and fine tune key pieces of Grindr's platform like NGinx, Redis, ElasticSearch, and MySQL/AuroraDB.
- Help drive and support continued innovation at Grindr
- Prototype and benchmark new architectures and services
- Build with quality and integrity
- Ensure high availability of the Grindr platform through systems and infrastructure engineering
- Help guide and mentor team members through pairing sessions and code reviews
- Showcase the innovation of the platform team during company demos and presentations
- 5+ years of experience designing and developing highly scalable distributed systems
- Bachelor’s Degree in Computer Science or equivalent experience
- Experience with Java - Java 8 a plus
- Deep knowledge of developing and maintaining concurrent non-blocking applications
- Hands-on experiencing designing and maintaining high availability services at scale
- An understanding of transport protocols and message formats
- Direct experience with TDD and a strong understanding of DDD.
- Must have functional programming experience (Scala/Akka, Erlang, and Elixir very welcome)
- Experience with chaos testing and designing for failure
- Experience with messaging protocols like XMPP and AMQP and knowledge of message brokers like RabbitMQ or Kafka
- Experience using AWS technologies such as EC2, RDS, Dynamo, and Elastic Beanstalk
Benefits & Perks
- 100% covered medical and dental insurance
- Unlimited sick policy
- Competitive Salaries
- Catered daily lunch
- Stocked kitchen
- Free on-site parking
- Casual dress environment
Grindr is an equal opportunity employer
*Recruiting firms that submit resumes to Grindr without first entering into a written contract will not be entitled to any compensation on candidates referred by that firm.