Python developers at Perch write clean and maintainable Python3 code, mainly using the battle tested Django framework to create scalable, robust, queryable REST APIs. We architect performant database tables and queries in Postgresql, query our multi-terabyte Elasticsearch cluster, and connect to micro services, as well as 3rd party APIs to compose the data returned by our endpoints. We use redis to cache expensive calls where necessary. We use Docker and AWS to support our infrastructure. Our growing development team follows an agile workflow; planning projects that can be broken down into tasks that can be completed in two week sprints. If you’re a strong technology generalist who loves learning new things and isn’t afraid to dive in and figure things out, Perch might be the place for you.
A day in the life
- Work with a team of developers, designers, and stakeholders to plan, build, and deliver updates to our core products and services every sprint.
- Write, test, and ship code for our production Django API.
- Debug errors that might crop up and write patches to fix them.
- Design database tables for new features.
- Refactor and improve existing code for greater simplicity or performance.
- Write code to integrate with 3rd party partners and data sources.
- Work independently to identify bottlenecks and sources of potential failure and improve them.
- Setup and deploy open source applications or microservices using Docker and AWS beanstalk.
- Participate in code review and collaborate with other developers to ensure we’re shipping high quality code and products.
A perfect match
- You have extensive experience writing modern, testable Python code with a team of developers.
- You have experience with a web framework such as Django (Django Rest Framework) or Flask.
- You are comfortable creating relational database models, and preferably have some experience with Postgresql.
- You have experience writing code for web APIs and know what HTTP status codes to use when. You know when to use POST vs PUT requests and some REST API concepts. Maybe you’ve even dipped a toe into GraphQL APIs.
- You know some linux and aren’t afraid to SSH into a server to check out what’s going at the operating system level. Checking disk usage, running processes, or tailing logs.
- You have experience querying Elasticsearch.
Above and beyond
- Experience testing code with PyTest
- Amazon Web Services ( RDS, EC2, S3, Beanstalk, and seemingly a million others )
- CI/CD ( Docker, Jenkins, GitHub, or similar )
- Some networking experience, you know what a subnet is
- Cybersecurity interest or background