Python

Python

Advanced

Python is an interpreted, high-level, general-purpose programming language, and one of the most popular languages for rapid development across multiple platforms. Python enables developers to focus on the core functionality of the application by abstracting common programming tasks.

This competency area includes understanding Python’s concurrent programming, file and database operations, unit testing, logging, and deploying the application.

Key Competencies: 

  1. Concurrent programming - Understanding concurrent programming, use, and differences between Python’s threading, multiprocessing, and asyncio modules. Thereafter, as per the application logic ability to use these modules to achieve concurrency.

  2. File Operations - Using a built-in function such as ‘open’ to perform file read and write operations.

  3. Database operations - Ability to use a built-in SQLite3 Database API module to connect to the SQLite database and perform database operations such as create, read, update, and delete.

  4. Unit testing - Understanding the importance of automated testing and use Python’s ‘unit test’ module for testing the application.

  5. Logging - Understanding the benefits of having logs for an application and the ability to configure and implement logging using Python’s ‘logging’ module.

  6. Deployment - Ability to configure and deploy the application for use. The application could be a script, a service, or it could be backend for a web application. It could be developed as a monolith or a micro-service architecture and deployed on a server or a cloud platform such as AWS or similar.