We are seeking for a Senior Python Developer to join our team and work on SolarWinds Backup product.
You are to work in the international team that develops Disaster Recovery services. Solution comprises RESTful microservices written in Python 3. We widely use type hinting, auto- and unit-tests, code review to increase code quality, dynamic REST features and JSON API specification to empower our API. Django and AIOHTTP are the major frameworks that are leveraged to build our services.
We deploy our solution to Amazon Kubernetes. Other AWS services like KMS, RDS, EC2, etc are widely used as well. Several DB engines such as MySQL, SQLite and Amazon Aurora support our storage needs.
There is a web-based UI, developed in Angular, that allows managing thousands of backed-up devices, adjusting their configuration, displaying recovery statistics in a form of tables and charts. Our services act as a backend for that UI.
We are looking for a self-motivated, result-driven person with good communication skills and the ability to quickly learn and work under minimal supervision in a distributed team. You must be able to develop efficient, clean self-documented code and follow commonly used best coding practices.
- Review requirements, specifications and technical documents to provide timely and meaningful feedback
- Design and review architecture of complex features with multiple components
- Design and implement functional requirements
- Independently develop complex features through multiple software layers
- Communicate status to all the stakeholders. Discuss and escalate issues in a timely fashion
- Support the code by writing unit and auto-tests
- Work on application performance improvements and tuning
- Provide technical feedback and assistance on others' code and design
- Communicate with other teams and help to integrate others' code to a common solution
- Identify and address root cause of the issues, drive problems from their definition till successful completion
- Prepare technical documentation
- Solid experience in Python 3 development, 2+ years
- Understanding of the threading limitations of Python, and multi-process architecture
- Understanding of fundamental design principles behind a scalable application
- Experience of developing of RESTful services
- Hands-on experience with Django, 1+ year
- Hands-on experience with testing frameworks like pytest, unittest, PyUnit, etc.
- Understanding of the relational databases and SQL
- Hands-on experience with message queues processing like RabbitMQ, Kafka, SQS, etc.
- Knowledge of the object-relational mapping
- Ability to write quality-oriented, efficient code and support it with unit and auto-tests
- Experience with other Python frameworks like AIOHTTP, Flask, Pyramid
- Knowledge of containers concepts, Docker and Kubernetes
- Familiarity with Amazon Web Services and/or Microsoft Azure
- Knowledge of scripting languages: Bash, PowerShell
- C++ experience
SolarWinds is an Equal Employment Opportunity Employer. SolarWinds will consider all qualified applicants for employment without regard to race, color, religion, sex, age, national origin, sexual orientation, gender identity, marital status, disability, veteran status or any other characteristic protected by law.