0% found this document useful (0 votes)
16 views2 pages

Senior Python Developer Role in Pakistan

This job posting is looking for a senior Python developer to join a team building applications to automate and improve customer business processes. Responsibilities include backend development, design, testing, communication, and delivering products using Python and related technologies. Requirements include over 5 years of experience in software development and Python along with skills in areas like REST APIs, databases, cloud platforms, and Agile processes.

Uploaded by

jahmed311.33
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views2 pages

Senior Python Developer Role in Pakistan

This job posting is looking for a senior Python developer to join a team building applications to automate and improve customer business processes. Responsibilities include backend development, design, testing, communication, and delivering products using Python and related technologies. Requirements include over 5 years of experience in software development and Python along with skills in areas like REST APIs, databases, cloud platforms, and Agile processes.

Uploaded by

jahmed311.33
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Senior Python Developer

Job category: Python

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)

Common questions

Powered by AI

A Senior Python Developer should be familiar with Agile software processes, which include iterative development, regular feedback loops, and collaboration between cross-functional teams. They should also be experienced with Agile technologies and related tools used for version control, CI/CD like Jenkins or Gitlab Pipeline, and containerization tools like Docker, and have an understanding of the code review and refactoring processes to align with Agile principles of flexibility, responsiveness to change, and efficiency in product delivery .

The document outlines that a Senior Python Developer in an Agile environment is responsible for back-end development to meet business needs, participating in application architecture design, and reviewing architecture and code. They must design and implement various test types and contribute proactively to solution development and process improvements. Communication with PMs, engineers, architects, QA, and other stakeholders is essential for delivering the product roadmap and plans. The developer should maintain high coding standards and follow best practices throughout the software development lifecycle .

The job listing suggests that Python developers should be involved in the decision-making process by participating in the design of application architecture, contributing to solution development, and conducting architecture and code reviews. This involves collaborating closely with various stakeholders such as PMs, engineers, and architects to ensure that decisions align with business needs and technical requirements .

The expectations for a Senior Python Developer include creating software architecture and designing complex applications, platforms, and microservices solutions. They should be able to design application architecture, perform architecture and code reviews, and update feature design documents. Their role requires not just implementing designs but also proactively suggesting process improvements and participating in the continuous refinement of the software architecture to meet evolving business and technical demands .

Beyond the required skills, desirable qualifications include certifications in Python and cloud computing platforms (AWS, GCP, Microsoft Azure). Additional knowledge in orchestration and containerisation (such as Kubernetes, Swarm), deployment patterns, serverless architecture, and experience with NoSQL databases, search engines, provisioning tools, and quality tools like SonarQube are also recommended .

High coding standards and software best practices are emphasized to ensure the development of highly testable, automatable, and performant code throughout the software development lifecycle. These practices help in maintaining code quality, facilitating easier debugging and troubleshooting, supporting code reviews and refactoring processes, and ultimately delivering reliable and efficient software solutions that meet business needs and user expectations .

Communication skills are crucial for a Senior Python Developer as they need to work in an international distributed team and interact effectively with PMs, engineers, architects, QA, and other stakeholders. Good communication facilitates the delivery of the product roadmap, aligns different components of the project, ensures that everyone is informed and synchronized, and supports decision-making processes in design application architecture and solution development .

The job listing emphasizes extensive experience (more than 5 years) in software development, particularly with Python. Knowledge in Computer Science principles and paradigms like OOP, SOLID, DDD, TDD, BDD, and proficiency in database theory, architectural and design patterns, and security patterns are emphasized. Experience with REST API development, various web frameworks, testing frameworks, ORMs, RDBMS, key-value storages, messaging systems, web servers, version control, cloud platforms, Docker, and CI tools is required. Troubleshooting, debugging, software architecture creation, Agile processes, code reviews, and refactoring are also important .

The document suggests that a Senior Python Developer should be responsible for designing and implementing a comprehensive suite of tests, including unit, integration, and functional tests. They are expected to use their understanding of testing frameworks and code testing practices to ensure that the software is robust, reliable, and meets the defined specifications. This involves using tools like pyTest and unit test, and integrating testing into the CI/CD pipeline for continuous verification .

The job listing states that it is imperative for a Senior Python Developer to understand concepts from computer science, including paradigms and principles such as OOP, SOLID, DDD, TDD, BDD. They should have an in-depth knowledge of database theory involving both RDBMS and NoSQL systems, proficiency in code testing practices, algorithms, data structures, architectural, enterprise, and design patterns, as well as security patterns and resistance to reverse engineering attacks .

You might also like