Job Description:
This may be the perfect job for you if:
- You have expert experience programming in Java and strong experience programming in Python
- You ideally have some experience in web-scale data and large-scale distributed systems, with bonus points for it being on cloud infrastructure.
- You have a product mindset. You are energized by building things that will be heavily used.
- You have familiarity with big data search technologies (e.g. Elasticsearch, Lucene, Solr, CloudSearch, etc.)
- You have experience building multi-language text processing, scraping, or data pipelines (real-time or batch) on large datasets for the purposes of information retrieval, machine learning, or data analytics.
- You enjoy query and analysis tuning for the benefits of low latent, highly relevant search.
- You have worked on and understand messaging/queueing/stream processing systems.
- You design not just with a mind for solving a problem, but also with maintainability, testability, monitorability, and automation as top concerns.
- You can balance complexity and simplicity.
- You are a strong collaborator.
- You value ownership.
Technologies we use and practices we hold dear:
- The right tool for the right job over we-always-did-it-this-way
- We pick the language and frameworks best suited for specific problems. This usually translates to Java and Spring for developing services and applications and Python for tooling.
- Packer and Ansible for immutable machine images and automation
- AWS for cloud infrastructure
- Infrastructure (and everything, really) as code
- Automation for everything: CI/CD, testing, scaling, healing, orchestration, etc.
- DynamoDB, S3, and Elasticsearch, for storage and query