Our mission is to connect the worlds photographers. Every month, millions of people from around the world use our website & mobile apps to find, share, & get rewarded for the worlds most inspiring photography.
We take pride in the products we ship & love what we do. Our engineering culture values mentorship, ownership, collaboration, & getting stuff done.
Our technology stack includes: Python, Go, Ruby on Rails, MySQL, Redis, ElasticSearch, & various Amazon AWS services. Check out our Engineering Blog for more.
500px, the worlds premier photography community, is looking for a Backend Developer to help us build & maintain the 500px.com platform.
It has been a long journey since 500px started back in 2009. Though we had been continuously improving our previous backend, its fundamental design no longer fit our current scale of data & traffic. We have completed the first step in our journey by splitting our Monolith into Rest APIs, but we've only just gotten started. Now we are looking to increase efficiency by implementing protocols like GraphQL, reevaluating API design, & building new features to improve our community for our users.Youll have ownership over the backend, & youll support other developers in building new services & components. You will be an advocate for performance, stability, & scalability across all of 500px, & encourage others to be as well. We are looking for a person who loves collaboration & is excited to take on new challenges.
What You'll Be Doing
- Helping to architect the 500px systems infrastructure
- Building highly scalable services in Go, Python, or Java
- Turning business requirements into code, in close collaboration with product managers, & front-end web & mobile developers
- Participating in technical planning & decision-making
- Becoming intimately familiar with our existing 500px system, & forming an opinion about how to improve it
- Coordinating & collaborating with developers across the entire stack
- Providing technical mentorship to other team members
- Being comfortable working with remote teammates
What the Ideal Candidate Will Have
- Knowledge of Go, Python, Java or Scala
- Knowledge with Amazon AWS services
- Experience using, or familiarity with, a relational database such as MySQL, Postgres, etc.
- Some Experience with a NoSql database such as MongoDB, Redis, Memcached, Elasticsearch or DynamoDB
- Solid fundamental understanding of web technologies including HTTP, RESTful services
- Complete comfort & familiarity with software development tools (git, Github, bug tracking), Linux environments
- Experience applying those skills & knowledge to build & maintain high-traffic, consumer-focused web services
- Good architectural sense & a passion for high quality code, honed by experience
- Solid understanding of application monitoring, metrics, & performance optimization
- Interesting technical challenges
- Competitive salaries, quarterly bonus structure
- Flexible hours
- Catered lunches, snacks & drinks
- Great health & dental benefits, paid parental leave
- Professional development opportunities
Our Interview Process
- Phone screen: < 30 min conversation with a hiring manager
- Coding challenge
- In-person interviews: 3-5 hours at our office where you'll meet multiple members of our team.
We believe diverse teams perform better, & we seek to increase our overall team diversity. We make active efforts to reduce the impact of unconscious bias in our hiring process.
500px welcomes & encourages applications from people with disabilities. Accommodations are available on request for candidates taking part in all aspects of the selection process.