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

**Description**

On behalf of Ciklum Digital, we are looking for Middle IoT .NET Developer to join our team on a full-time basis.

You will join a highly motivated team and will be working on a modern solution for our existing client. We are looking for technology experts who want to make an impact on new business by applying best practices and taking ownership.

Our client is a leading global provider of first-rate products in the areas of heat transfer, separation and fluid handling. With these as its base, our client aims to help enhance the productivity and competitiveness of its customers in various industries throughout the world. We define their challenges and deliver sustainable products and solutions that meet their requirements – mainly in energy, the environment, food and the marine industry.

The company’s equipment, systems and services are dedicated to assisting customers in optimizing the performance of their processes. The solutions help them to heat, cool, separate and transport products in industries that produce food and beverages, chemicals and petrochemicals, pharmaceuticals, starch, sugar and ethanol.

**Responsibilities**
- IoT back-end and client services 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)
- IoT reference architecture
- Database theory (RDBMS)
- Code testing practices
- Algorithms
- 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, .NET Core, ASP.NET (Core, MVC, WebAPI) (more than 2 years);
- Testing frameworks (g. NUnit, XUnit, MSTest) (more than 1 years)
- ORM (e.g. g. Entity Framework, Dapper) (more than 1 years)
- RDBMS (especially SQL Server) (more than 1 years)
- IoT protocols (e.g. MQTT, AMQP, LwM2M)
- Microsoft Azure IoT (Azure IoT Hub, Azure Device SDK, Azure Device provisioning services, Azure Device twins, Azure Functions, Azure Stream analytics)
- Web Servers (e.g. IIS)
- 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
- Architectural, Enterprise Patterns
- Security patterns, Common attacks types (OWASP)
- Deployment patterns
- Experience with:
- Troubleshooting, profiling and debugging applications
- Microservices
- Practical commercial experience with:
- Key-value storages (e.g. Redis, Memcached)
- Messaging systems (e.g. RabbitMQ, Apache Kafka, Active MQ, AWS SQS, Azure Service Bus, Google Pub/Sub);
- Cloud computing platforms (e.g. AWS, Google Cloud Platform, Microsoft Azure)
- Serverless architecture
- 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)

**Personal skills**
- Curious mind and willingness to work with client in consultative manner to find areas to improve
- Good analytical skills
- Good team player, motivated to develop and solve complex tasks
- Self-motivated, self-disciplined and result-oriented
- Strong attention to details and accuracy

**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