Position: Senior .NET Developer
Company: Ciklum
Category: .NET
Experience required: 5y
English level: intermediate
Published: 2021-02-01T00:00:00+02:00

**About the Client:**
Client is an industry leading civil engineering company specialising in the design, construction, operation, financing and maintenance of railway networks in the UK.

Project is about the Integration Hub – an iPaaS Integration Platform on Azure used to connect more than 40 applications planned for use across the business; automate numerous processes; and manage data flow, for example data from recruitment software to onboarding platform.

The main goals of this initiative were to minimise the need for manual input required to consolidate data across these systems, thus reducing potential errors, and simplify the onboarding process of new systems by using standardised integration patterns.

**Responsibilities**
- Back-end development to meet customer’s business needs and implement components according to modern software development environment (cloud-based platforms, microservice architecture, etc.);
- Taking part in the decision-making process in design application architecture, solution development, architecture and 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 5 years;
- Excellent knowledge in Computer Science, Computing Theory:
         Paradigm & Principles (OOP, SOLID, DDD, TDD, BDD)
         Database theory (RDBMS, NoSQL)
         Code testing practices
         Algorithms
         Data structures
         Architectural, Enterprise and Design Patterns
         Security patterns, Reverse engineering resistance, Common attacks types (OWASP)
- Understanding of network interactions:
         protocols
         conventions (e.g. REST, RPC)
         authentication and authorization flows
         standards and practices (e.g. oAuth, JWT)
- Excellent knowledge and experience in C# and .NET (more than 3 years);
- Practical commercial experience with:
        REST API development
        .NET Framework, .NET Core, ASP.NET (Core, MVC, WebAPI) (more than 3 years)
       Testing frameworks (e.g. e.g. NUnit, XUnit, MSTest) (more than 2 years)
       ORM (e.g. Entity Framework, Dapper) (more than 2 years)
       RDBMS (e.g. SQL Server, MySQL/MariaDB, PostgreSQL) (more than 3 years)
       Key-value storages (e.g. Redis, Memcached)
       Messaging systems (e.g. RabbitMQ, Azure ServiceBus, Apache Kafka, 
       Active MQ, AWS SQS, Google Pub/Sub)
       Web Servers
       Version control systems (GIT)
       Cloud computing platforms (e.g. Microsoft Azure, AWS, Google Cloud Platform)
       Docker
       Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo)
       Builders
- Commercial experience with:
       Azure Service Bus
       Azure Event Grid
       Azure API Management
       Azure Logic Apps
       Azure Function Apps
       Arm Templates
       Azure DevOps (CI/CD pipelines)
- Intermediate English or above.

**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;
- 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.