Position: Middle .NET Developer (IoT)
Company: Sigma Software Group
Experience required: 3y
English level: intermediate

**PROJECT**
We are working on an innovative and cloud-based web application that gives users the ability of remote control and monitoring of IoT devices.

It is a long-term project that considers continuous development & improvement of the existing cloud-based web application. New features come into play continuously based on the feedback we receive from the end-users. Those are prioritized and taken for development.

We are working in close-knit teams from 3 to 7 developers per project, and in some cases, there are 20+ developers working for the same customer in a group of related projects. The default setup of a development Unit is a team lead, 3 developers, 1-2 test engineers. Product Owners of all the teams are working on the customer’s side.

**REQUIREMENTS**

At least 3 years of experience in commercial .NET Development
Excellent OOP/OOD skills and excellent quality of produced code
Excellent problem-solving skills
Strong experience with NET Core, ASP.NET Core, C#, JavaScript
Strong knowledge of cloud technologies:
Azure Device Provisioning Service, Azure IoT Hub
Azure Service Fabric, Azure Functions, Azure App Services
Azure Service Bus, Azure Event Hubs
Azure Application Insights
Strong knowledge of DB concepts – Azure SQL, Azure Cosmos DB (graph and key-value), Azure Redis, Azure Storages
Proven skills in unit test frameworks and tools – xUnit, Moq
Working experience with Bitbucket, Azure DevOps
Experience in development of enterprise systems with multi-layered architecture
At least Upper Intermediate level of spoken and written English
 

**NICE TO HAVE:**
Experience with graph databases
Experience with big data storages development and analysis
Microsoft Azure IoT Developer certification will be a plus
RESPONSIBILITIES
Building a new product from scratch
Helping colleagues improve their work, in particular through code reviews, but also by taking interest in their work
Contributing to the overall plan for the company, by breaking goals down into tasks, estimate their complexity, and deliver in a timely manner
 

WE ARE LOOKING FOR A DEVELOPER WHO KNOWS AND IS ABLE TO WORK WITH THE FOLLOWING THINGS:
Actively participate in the design/build stage of the software engineering lifecycle (requirements gathering, prototyping, architecture, detailed design, development, testing, and deployment)
Be involved in planning, designing, and execution with Agile delivery methodologies
Create awesome code with awesome documentation
Utilize the best engineering practices (unit tests, code/design review, etc.)
Stand up for high quality solutions and bring new ideas to life
Take a part in technical discussions, listen to arguments, and apply critical thinking