Position: Back-end .NET Developer
Company: IdeaSoft
Experience required: 3y
English level: intermediate

We are looking for a Back-end .NET Developer to join the team on a full-time basis.

Project description
The system for the USA entertainment companies is unified for several services of booking, processing orders, group activities, and easy game access. For users who need to book the game venue slot or place a food&beverage order - personal or group. For employees to get the orders asap in a clear order and procure user’s orders as soon as possible. The benefit of the system is systematization and integration with payment, POS, and scoring systems, NFC/RFID interactions, that are connected in one application, which reduces the funds spent by the customers and provides a user-friendly decision.

Requirements:
- 3+ years experience with .NET (Core preferred);
- At least 1 year experience with AWS services (CloudFormation Template, SES, Elastic Container Service);
- Deep knowledge of RDBMSes (relational database management systems) (MySQL preferred) and non-relational DBMSes;
- Deep knowledge of ASP.NET Web API/MVC and its internal workings;
- Knowledge of IdentityServer4
- Experience in concurrent programming;
- Experience in ADO.NET usage;
- Experience in Entity Framework and its internals;
- Experience in making scalable API layer in high-loaded systems;
- Experience in containerization instruments;
- Experience in Unit and Integration testing;
- Experience in CI/CD principles and tools, Git;
- Experience with Redis;
- Experience with WPF.

Additional desirable requirements:
- Experience in raw WebSockets and/or SignalR

Responsibilities:
- Implement software at a high level of quality, with high level of test coverage in a modular design;
- Investigate, reproduce and resolve defects;
- Work aligned to development standards and best practices;
- Refactor code where there’s benefit in doing so;
- Ensure non-functional requirements are met by deliverables;
- Take responsibility for the product and your contributions to it;
- Collaborate with QA to ensure tests are aligned with the solution and complement tests written by development;
- Organize and execute releases.