MAIN TASKS
* Architect server-side components and services that form the backbone of web applications, employing best practices in Python programming.
* Develop and maintain RESTful APIs to facilitate seamless communication between front-end and back-end systems.
* Design, implement, and optimise database schemas and queries to ensure efficient data storage and retrieval processes.
* Manage database security measures to protect sensitive information, ensuring compliance with data protection standards.
* Enhance application performance by identifying bottlenecks and optimising server-side code and database queries.
* Implement scalable architectures to handle increased user load and data volume, leveraging cloud services and containerisation.
* Conduct regular code reviews and use vulnerability scanning tools to identify and address potential security issues.
SPECIFIC EXPERTISE
* Proficiency in Python and experience with web frameworks such as Django, Flask, or FastAPI.
* Experience with code linters and formatters (e.g., pylint, black, flake8) to enforce coding standards.
* Experience with AI-powered code assistants (e.g., Amazon Q, Github Copilot), staying updated with advancements in AI-driven code technologies that can streamline Python web application development.
* Strong understanding of RESTful design and implementation.
* Solid experience with relational (e.g., Oracle, PostgreSQL) and non-relational databases (e.g., Elasticsearch, MongoDB).
* Excellent knowledge of ORM, schema design, efficient queries.
* Expertise in containerisation tools like Docker, Podman and orchestration using Kubernetes.
* Knowledge of vulnerability scanning tools (e.g., OWASP), secure coding practices and standards, including authentication, authorisation and encryption.
* Knowledge of code versioning tools such as Git or SVN.
* Knowledge of DevSecOps tools such as Jenkins, GitLab CI, GitHub Actions (Continuous Integration / Deployment).
* Familiarity with configuration management tools like Ansible.
* Experience with VM management, Linux.