Position: Python Software developer
Company: Mirantis
Experience required: 3y
English level: intermediate

Mirantis has more experience delivering OpenStack clouds to more customers than any other company. We build the infrastructure that makes OpenStack work. We are profitable, have strong investors, and ample cash reserves.
What Linux was to open source and operating systems, OpenStack is to cloud computing. It makes programmable infrastructure vendor-neutral and frictionless to access, not to mention it unlocks distributed applications and accelerates innovation. In the same way that virtualization changed the IT cost and technology landscape, OpenStack is driving similar innovation in cloud computing to bring software-defined infrastructure to all parts of the datacenter.

Mirantis is looking for a highly qualified and passionate Software Engineer who wants to work at the forefront of software development. This includes design and implementation of features for the networking layer of Mirantis OpenStack on Kubernetes (MOSK), bug fixing, and working with customers located around the globe. You will work in tight cooperation with other development teams, deployment engineers and technical experts to enhance and strengthen the TungstenFabric project 
Primary Responsibilities:
Design and implementation of features for networking part in MOSK
Analyze customer requirements, propose and implement changes to TungstenFabric and other MOSK components
Maintenance and improvements of existing solutions, resolution of challenging issues in our customers
Participation in the OpenStack Neutron/TungstenFabric/k8s open source communities
Tight cooperation with the whole team, developing MOSK, k8s and OpenStack, distributed all around the globe (Russia, Ukraine, Poland, Czech, US, ...)
Qualifications:
Expert level in Python (at least 2 years of production development)
Good understanding of Go programming language concepts
Ability to understand and troubleshoot code written in Python/Go/C++
Pragmatic approach to problem solving and tenacity to follow through to completion of work
You must have knowledge in docker and kubernetes
Experience in software development for complex, distributed applications (at least 4 years)
Strong networking knowledge with expertise in L2-L7 network protocols. Clear understanding of modern and currently used network protocols and processes running on each of network layers
Networking troubleshooting / debugging - e.g. tcpdump, wireshark, traceroute, route, netstat
Understanding of cloud computing concepts
Excellent knowledge of Linux (utilities, bash, other scripting languages)
Experience with version control systems and code review (Git, Gerrit)
Experience with systems administration in Linux (CentOS and Ubuntu preferred)
Spoken and written English-language communication skills
Big Plus:
Knowledge of OpenStack
Practical administration experience in Linux (RHEL, CentOS, Ubuntu) as a server platform.
You had a look into projects like Project Calico, Prometheus, Ceph
Experience in onboarding applications to the cloud is a big plus
Knowledge and experience of various SDNs (Neutron/TungstenFabric/OpenDaylight)
Knowledge of C++
Knowledge of/experience with cloud networking (solutions) / SDN
Knowledge of kubernetes networking solutions (CNIs, multi-CNIs, service meshes)
Practical experience in SaltStack or other automation tools for medium and large environments
Practical administration experience of virtualized environments based on KVM
What We Offer:
Work with exceptionally passionate, talented and engaging colleagues
Entire development process is open source – making it easy to build our portfolio
High-energy atmosphere of a young company, competitive compensation package
Strong benefits plan
Lots of freedom for creativity and personal growth
Career growth opportunities and ability to relocate
Medical insurance
English lessons in the office