Position: Senior Python Engineer
Company: Ciklum
Category: Python
Experience required: 3y
English level: intermediate

**Responsibilities**

You’ll be working within a tight-knit, friendly and collaborative development team on exciting projects with plenty of technical challenges to get your teeth into.

You won’t find any micro-management here – we’re all about trust, enablement and personal ownership. We give you space and autonomy to solve complex problems, while offering support if/when needed.

We have a clear company vision, and we’re building a strategy and roadmap to go around this. Everyone knows how their work directly impacts the goals we’re working towards, and everyone’s voice is heard.

Followers of best practice will fit in well, but pragmatism is key. We generally take the approach of using the right tool for the job rather than being fixed to any one particular way of doing things.

**Requirements**

- Experience in software development for more than 3 years
- Good to know Go / Typescript
- Strong knowledge in Computer Science, Computing Theory:
Paradigm & Principles (OOP, SOLID)
Database theory (RDBMS)
Code testing practices
Algorithms
Data structures
Design Patterns

- Understanding of network interactions:
Protocols
Conventions (e.g. REST, RPC)
GraphQL
Authentication and authorization flows
Standards and practices (e.g. oAuth, JWT)

- GoogleCloud Knowledge
- Strong knowledge and experience in Python (more than 2 years);
Struct module
Data structures and data processing algorithms
Pandas
Numpy / scypy / matplotlib / bokeh

- Practical commercial experience with:
Designing, building, testing, and maintaining APIs and services
Web application frameworks (e.g. Flask, Falcon, Django, aiohttp) (more than 1 year)
Testing frameworks (e.g. e.g. pyTest, unittest)
ORM (e.g. SQLAlchemy) (more than 1 year)
RDBMS (e.g PostgreSQL, MySQL/MariaDB, MS SQL) (more than 1 year)
Web Servers
Version control systems (GIT)
Docker
Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo)
Builders;

- Experience with:
Agile software processes and technologies
Code Review process
Refactoring process
- Upper-Intermediate English

**Desirable**

- Knowledge in:
TDD, BDD
Deployment patterns
- Experience with:
Troubleshooting, profiling and debugging applications
- Practical commercial experience with:
Key-value storages (e.g. Redis, Memcached)
Messaging systems (e.g. RabbitMQ, Apache Kafka, Active MQ, AWS SQS, Azure)
Integration with 3rd party solutions
NoSQL (e.g. MongoDB, ElasticSearch, CouchDB)
Search Engines (e.g. ElasticSearch, Azure Search, Apache Solr)
Docker, Kubernetes

**Personal skills**

Good team player, motivated to develop and solve complex tasks
Strong communication and problem-solving skills
Self-motivated, self-disciplined and result-oriented
Willing to improve professional knowledge

**What's in it for you**

Career growth opportunities
Realization of your innovative ideas in building new solutions and services
Possibility to propose solutions on a project
Friendly collaborative teams and enjoyable working environment
Professional skills development and training programs
Variety of knowledge sharing, training and self-development opportunities
Learn different business domains
Constant flow of new projects
Dynamic and challenging tasks
Projects from scratch
Continuous self-improvement
State of the art, cool, centrally located offices with warm atmosphere which creates really good working conditions
Long-term employment with 20 working-days paid vacation and other social benefits