Position: Middle .NET Developer
Company: Ciklum
Experience required: 3y
English level: intermediate

**About the role:**

As a Middle .NET Developer, become a part of a cross-functional development team working for Our Client. 

**Responsibilities**

Back-end development to meet customer’s business needs and implement components according to modern software development environment
Taking part in the decision-making process in application code design, solution development, code review
Develop and review feature design documents and provide inputs/update to specifications for the solution
Design and implement a set of various types of tests (unit, integration, functional, etc)
Proactive position in solution development, processes improvements
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 3 years
Strong knowledge in Computer Science, Computing Theory:
Paradigm & Principles (OOP, SOLID)
Database theory (RDBMS)
Code testing practices
Data structures
Design Patterns
Understanding of network interactions:
protocols
conventions (e.g. REST, RPC)
authentication and authorization flows
standards and practices (e.g. oAuth, JWT)
Strong knowledge and experience in C# and .NET (more than 2 years)
Practical commercial experience with:
REST API development
.NET Framework, ASP.NET ((WebForms,, MVC, WebAPI) (more than 2 years)
Testing frameworks (e.g. NUnit, XUnit, MSTest) (more than 1 years)
RDBMS (SQL Server) (more than 1 years)
Messaging systems (Azure ServiceBus, MSMQ)
Web Servers (e.g. IIS)
Version control systems (GIT)
Cloud computing platforms (Microsoft Azure)
Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo)
Windows application (WinForms, WPF, WebServices, Installer)
Experience with:
Agile software processes and technologies
Code Review process
Refactoring process
Good English skills

**Desirable**

Understanding of orchestration and containerization (Kubernetes)
Knowledge in:
○ Deployment patterns
Experience with:
Troubleshooting, profiling and debugging applications
Practical commercial experience with:
Key-value storages (e.g. Redis)
Integration with 3rd party solutions
NoSQL (e.g. MongoDB, ElasticSearch, CouchDB)
Search Engines (e.g. ElasticSearch, Azure Search, Apache Solr)
Quality tools (e.g. SonarQube)

**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
Continuous self-improvement
Long-term employment with 20 working-days paid vacation and other social benefits