Middle Python Engineer
For our customer, the author of the most widely used solution to recover digital revenue, we are looking for a Middle Python Engineer. Over 1,000 companies rely on their platform to fight counterfeits, piracy, impersonation, and distribution abuse. The company has 270+ professionals and offices in New York, Barcelona, Beijing, and Salt Lake City.
We are looking for a Middle Python Engineer to get involved in our tracking technology, libraries, and hundreds of projects that use them, helping us maintain our platform, optimize it, and further improve it.
Responsibilities:
Your day to day will be divided between writing good Python and idiomatic code, reviewing pull requests from other team members, debugging complex problems, and also participating in decision-making processes. That is, contributing with your experience in software architecture and design.
Requirements:
- 2-3+ years in a Python Developer position or similar
- The ability to express complex ideas in spoken and written English is crucial as our team is made up of people of 5 different nationalities and it is the language in which we communicate
- Good knowledge of Python, with the ability to write idiomatic and reusable code
- Experience in object-oriented design, software architecture best practices and patterns, and large-scale application development with maintainability and extensibility in mind
- Experience with web requests and Python request library
- Experience with TDD, testing best practices and methodologies: pytest, unittest, mock and answers libraries
- Experience using docker / docker-compose throughout the entire lifecycle, including development, testing, debugging, QA, CI, and deployment
Tech stack:
- Python, AWS, MySQL / SQLAlchemy, Snowflake / Redshift Airflow / Celery / RabbitMQ / Luigi, Redis, Scrapy, IDOL for data interfaces and schema, Sepia config system
Nice to have:
- Understanding of the architecture of web applications (including ajax websites) and mastery of the development tools built into the browser, for reverse engineering purposes
- Inclination towards code optimizations (algorithmic complexity, memory usage)
- Proficiency in contributing to shared code bases using git
- Efficient text processing with regular expressions and XML parsing
- Experience with selenium / nodejs / phantomjs / splash or any similar software for scraping or automation purposes
We offer*:
- Flexible working format - remote, office-based or flexible
- A competitive salary and good compensation package
- Personalized career growth
- Professional development tools (mentorship program, tech talks and trainings, centers of excellence, and more)
- Active tech communities with regular knowledge sharing
- Education reimbursement
- Memorable anniversary presents
- Corporate events and team buildings
- Other location-specific benefits
*not applicable for freelancers