Sr. Infrastructure Engineer (Elasticsearch)
Remote (Global) /
Apollo.io's mission is to help every business to fulfill their full market potential by connecting companies with amazing solutions with those who need them most. We've built a database of 250 million business contacts and 10 million companies, and our software helps sales and marketing identify and convert their most likely potential customers. We've raised over $10 million from Silicon Valley investors such as Y Combinator, Nexus Venture Partners, SV Angel, and Social Capital, and are profitable and continuously growing. We're headquartered in San Francisco, CA with a brilliant worldwide remote team.
Apollo is the foundation of your entire go-to-market strategy.
Your Role & Mission
We are looking for an experienced Senior Infrastructure Engineer (Elasticsearch Database) to build and scale our production environment. The ideal candidate will have 5+ years of experience, a passion for systems engineering, automating operations, infrastructure security, and high-availability systems as well as experience in software development.
With your expertise in Elasticsearch, as a Senior Infrastructure Engineer, you will be a critical part of our growing company, working on a cross-functional team to implement best practices in technology, architecture, and process. Success in this role requires the ability to take on challenging problems and design/develop appropriate solutions with little to no assistance. You will perform as the subject matter expert for Elasticsearch architecture, performance, and scalability.
Examples of work that Software Engineers do at Apollo
- Scrape news from more than 1000+ sources every day. Apply NLP to categorize the news, and alert users based on their preference.
- Design, build, and scale machine learning pipelines that analyze and score user’s data based on billions of signals that we scrape from tens of millions of websites.
- Design, build, and scale complex and highly customizable analytics engines to help clients track success metrics while using our platform.
- Build a phone call system that allows users to make phone calls on the platform and track their phone call history. Apply NLP on the recording to help our customer analyze their phone calls and improve performance.
- You move fast. Stay hungry. Ambitious.
- You have a willingness to take leadership in designing and scaling our core infrastructure that will lay the foundation for the company for the next decade.
- You Go above and beyond to help your team and able to become an exemplary leader
- Confident in owning your role, and bringing creative ideas to the hands of our users
Role & Responsibilities
- Design, build, and scale backend software services for Apollo’s distributed and highly available architecture using modern backend languages.
- Implement and scale enterprise-level security infrastructure.
- Manage instances that store multiple terabytes of data
- Use automation and configuration management tools to provision hosts in cloud hosting platforms.
- Work cross-functionally with various teams at Apollo.
- Participate in an on-call rotation in which the entire development team participates in, to troubleshoot performance and operational challenges.
Challenges & Projects You'll Take On
Multi-Terabyte level database system (and growing fast!)
Backend services storing and processing tens of millions of database objects per day
Robust enterprise-level security infrastructure
Data pipelines to gather and analyze service and product usage data
Deploy and staging infrastructure that balances our speed for innovation with the need for robust testing
Skills and Relevant Experiences
- BS or MS degree in Computer Science, Computer Engineering or similar
- Minimum 4 years experience with Elasticsearch, with at least 1-2 years in senior position
- You are well-versed with Elasticsearch Database.
- Experience with Distributed systems
- Fault-tolerant and highly-available systems
- Some exposure to a modern backend programming languages, preferably Ruby
Required Main Skills/Experience:
- Elasticsearch Database
- Experience in Software Development (Ruby on Rails, Python etc)
- Has experience setting up, managing clusters of at least 1TB/1 Terabyte
- Cluster must have secondaries and multiple shards
- You should be one of the chief architects. You need to be comfortable setting up the cluster from scratch; not someone who wrote a couple lines to add the logging or something similar
- You must have experience where you took down a subset of the servers and still served production traffic
- Experience with Distributed systems
A successful candidate will dive in to take ownership of problems, design practical forward-thinking solutions, and fundamentally will not accept doing things over and over by hand.
Great to Have
Understanding of best security practices
Cloud hosting such as Google, AWS etc.
What You'll Love about Apollo:
This is a remote position available from anywhere in the world. Please only apply if you meet the minimum requirements.
Besides the competitive salary and the positive culture that promotes collaboration, learning, and excellence, as we are scaling our company, we are committed to providing the best possible environment for our engineering team. The less time our engineers spend dealing with cumbersome processes, inefficient systems, and commuting, the more time they have to solve problems and make an impact. We're a technology-first team dedicated to building the greatest engagement software available. We keep in touch with Slack and regular video conferences. You can work from home, a coffee shop or the beach as long as your work is aligned with your goals.
If this sounds interesting, we would love to hear from you! Please include whatever info you believe is relevant: resume, GitHub profile, code samples, links to personal projects, etc.