Python Systems Engineer (Remote)
- 805 Veterans Blvd, Redwood City, CA 94063, USA
Crunch.io is an innovative analytics company in the market research industry. We offer a survey data analysis platform that allows market researchers, analysts, and marketers to collaborate in a secure, cloud-based environment, using an intuitive drag-and-drop interface. Crunch users can quickly gain insights from their data and communicate them to their clients.
We are hiring a Python Software Systems Engineer to help develop and deploy our platform. We are inviting you to join our small, fully remote team of developers and operators helping make our platform faster, more secure, and more reliable. You would help us deliver new features and build the future for how we deploy our products faster and safer while increasing the availability and reliability of our systems. You will explore different ways of problem solving and discover, explain, and defend your choices in implementation. You will be self-motivated and disciplined in order to work with our fully distributed team.
We are looking for someone who is a quick study, who is eager to learn and grow with us, and who has experience in DevOps or Agile cultures. At Crunch, we believe in learning together: we recognize that we don’t have all the answers, and we try to ask each other the right questions. Some of the ways that we accomplish that include paired programming to tackle a hard problem, transparent code reviews, and discussions about design and architecture. Since Crunch’s employees are completely distributed, it’s crucial that you can work well independently, and keep yourself motivated and focused. We move fast but carefully, with a deep commitment to not breaking things… well, not too much.
In addition to typical software engineering and system administration tasks, you will be expected to
Contribute to code quality through unit testing, integration testing, code review, and system design using Python
Configure and administer production services, and develop and maintain procedures for updating and upgrading these systems without sacrificing availability
Develop and and maintain staging, testing, and developer environments that provide a uniform base for developing code that is trusted to work well in production
Develop and automate software lifecycle systems to aid in Continuous Integration and Delivery of tested code
Participate in on-call rotations (limited to your working hours + the occasional weekend) and assist in diagnosing and fixing system failures quickly when they occur
Ability to work independently and communicate clearly
A commitment to producing robust, testable code that meets industry standards
Strong programming experience using Python or another high level programming language
Strong system scripting ability using Python, Bash, or similar
Substantial Linux System Administration experience
Nice to have, but not required:
Building large-scale or complex multi-tenant web applications
Parallelization, code optimization, and Big Data operations
System Deployment and/or Configuration Management software (e.g., Ansible, Chef, Puppet, etc.)
Continuous Integration tools (e.g., Jenkins, Bamboo, Travis, etc)
Monitoring (e.g., Nagios, Datadog, Sentry, Splunk, etc.)
Cloud Computing (e.g., AWS, OpenStack, Google Cloud, Azure, etc.)
- ElasticSearch, Docker, Kubernetes, Mesos
Crunch is a well-funded, remote-first company with a collaborative and open culture. We are passionate about our product and our mission, and value work/life balance, efficiency, simplicity, and fantastic customer service.