Position: Middle Python Developer for Ciklum Digital
Company: Ciklum
Experience required: 2y
English level: intermediate

Project description:

We strive to develop a mature and robust API that will serve as an authoritative vendor for rating. We strongly emphasize reliability, meaning it’s not just enough that our services are up and running. But that the data we provide is always accurate and up to date. On the project, you’ll be responsible for:
- Scrape, store and enrich data from public sources
- Implement data structure
- Work with elasticsearch query DSL
 
Responsibilities:
- Back-end development to meet customer’s business needs and implement components according to modern software development environment
- Implement a set of various types of tests
- 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 one year
- Knowledge in Computer Science, Computing Theory:
Paradigm & Principles (OOP, SOLID)
Database theory (RDBMS)
Algorithms
Design Patterns
- Understanding of network interactions:
protocols
conventions (e.g. REST)
Knowledge and experience in Python (more than one year)
- Practical commercial experience with:
Web application frameworks (e.g., Flask, Falcon, aiohttp, Tornado, fastapi)
Version control systems (GIT)
- Experience with:
Code Review process
Strong Intermediate English

Desirable:
- Knowledge in:
Data structures
Code testing practices
Microservices
- Experience with:
Troubleshooting, profiling, and debugging applications
Refactoring process
- Practical commercial experience with:
REST API development
Testing frameworks (e.g. e.g. pyTest, unittest)
Web Servers
Docker
Key-value storages (e.g. Redis, Memcached)
Cloud solutions (e.g. AWS, Google Cloud Platform, Microsoft Azure)
Integration with 3rd party solutions
NoSQL (e.g. MongoDB, ElasticSearch, CouchDB)
Serverless architecture

Personal skills:
We expect you to be opinionated and a good communicator

What's in it for you:
A software engineer role in Visma Rating can be considered an opportunity to grow as a developer. For the most part, you will decide what you work on, whether development, infrastructure, or architecting. We are a meritocracy, and we believe the team itself can organize and distribute work among themselves. We will supervise the team and oversee the division of labor, provide a leadership structure to manage and motivate the team, plus a support function to allow the core part of the team to do what they do best