Senior Python Developer - JD
Senior Python Developer - JD
Pakistan
On behalf of Ciklum, we are looking for a Senior Python Developer to join our team on a full-time basis.
Ciklum is building a team to work on various projects which primary goal is to improve and automate the
customer’s business processes, reduce time and efforts, required for various operations.
Responsibilities
● Back-end development to meet customer’s business needs and implement components
according to modern software development environment (cloud-based platforms, microservice
architecture, etc.);
● Taking part in the decision-making process in design application architecture, solution
development, architecture and code review;
● Develop and review feature design documents and provide inputs/update to specifications for the
solution;
● Design and implement a set of various types of tests (unit, integration, functional, etc);
● Proactive position in solution development, processes improvements;
● Working in an international distributed team in an Agile environment;
● Communicate with PMs, engineers, Architects, QA and other colleagues and stakeholders;
● Delivering the product roadmap and plannings;
● To use high coding standards, software best practices and write highly testable, automatable and
performant code over the whole SDLC.
Requirements
● Experience in software development for more than 5 years;
● Excellent knowledge in Computer Science, Computing Theory:
○ Paradigm & Principles (OOP, SOLID, DDD, TDD, BDD);
○ Database theory (RDBMS, NoSQL);
○ Code testing practices;
○ Algorithms;
○ Data structures;
○ Architectural, Enterprise and Design Patterns;
○ Security patterns, Reverse engineering resistance, Common attacks types (OWASP);
● Understanding of network interactions:
○ protocols;
○ conventions (e.g. REST, RPC);
○ authentication and authorization flows;
○ standards and practices (e.g. oAuth, JWT);
● Excellent knowledge and experience in Python (more than 5 years);
● Practical commercial experience with:
○ REST API development.
○ Web application frameworks (e.g. Flask, Falcon, Django, Web2py, aiohttp, Tornado)
○ Testing frameworks (e.g. e.g. pyTest, unit test) (more than 2 years);
○ ORM (e.g. SQLAlchemy) (more than 2 year);
○ RDBMS (e.g PostgreSQL, MySQL/MariaDB, MS SQL) (more than 2 year);
○ Key-value storages (e.g. Redis, Memcached);
○ Messaging systems (e.g. RabbitMQ, Apache Kafka, Active MQ, AWS SQS, Azure
Service Bus, Google Pub/Sub);
○ Web Servers;
○ Version control systems (GIT);
○ Cloud computing platforms (e.g. AWS, Google Cloud Platform, Microsoft Azure);
○ Integration with 3rd party solutions;
○ Docker;
○ Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo);
○ Builders;
● Experience with:
○ Troubleshooting, profiling and debugging applications;
○ Creation software architecture and design of complex applications, platforms,
microservices solutions;
○ Agile software processes and technologies;
○ Code Review process;
○ Refactoring process;
● Fluent or Upper-Intermediate English;
Desirable
● Certifications on:
○ Python;
○ Cloud computing platforms (AWS, GCP, Microsoft Azure);
● Understanding of orchestration and containerisation (e.g. Kubernetes, Swarm);
● Knowledge in Deployment patterns;
● Practical commercial experience with:
○ Serverless architecture;
○ NoSQL (e.g. MongoDB, ElasticSearch, CouchDB);
○ Experience with Search Engines (e.g. ElasticSearch, Azure Search, Apache Solr);
○ Provisioning tools (e.g. Terraform, Ansible);
○ Quality tools (e.g. SonarQube)