Position: C# Client Developer
Company: Playtika
Category: .NET
Experience required: 3y
English level: intermediate

You will be a significant part of a team of experienced engineers and will use C# as your main programming language for the development of a new and support of existing libraries that are used in Xamarin and Unity-based games.

INFRA is a department that develops core services that can be used in any company game. There are 21 teams in INFRA that manage nearly 100 microservices including Payment System, Back Office System, Users Segmentation, Coupons service, Tournaments Service, User Service, Bonus Service, Messaging Service, etc. All teams work by adopted SCRUM methodology with local Product Owners and Scrum Masters.

Responsibilities:
* Develop new cross-platform infrastructure client libraries for an internal game studio.
* Maintain and support existing libraries and products.
* Investigate and fix weird rare crashes, application freezes.
* Review the code of your colleagues.
* Cover your code with unit tests.
* Find weak spots in the design of the app, and implement improvements, so that your follow developers will make fewer mistakes during development.
* Listen to suggestions from your team on how different aspects of the feature development could be improved and find and implement your solutions.

Requirements:

* Understanding and ability to apply software architecture principles (OOP principles, SOLID, KISS, DRY, IoC/DI, design pattern);
* Proven experience with .NET and C#;
* Strong knowledge of asynchronous programming;
* Knowledge of data structures and algorithms;
* Experience connecting applications to multiple APIs (http/https, sockets);
* Experience with Test-Driven Development (TDD) as it pertains to unit testing (xUnit, NUnit, Moq, Automock);
* Interest in improving the product you work on.
* Ability to communicate your ideas to other members of the team and accept constructive criticism.

Nice to have:

* Experience with Xamarin mobile development or knowledge of the specifics of the iOS or Android platform.
* Experience with UWP development.
* Experience with Unity development.

We offer all our employees:

* Competitive salary, performance-based bonuses, and flexible working hours;
* Training programs, certifications, conferences including international events; 
* Social package, including gym membership compensation, medical insurance; 
* Paid vacation and sick leaves;
* Corporate English classes;
* Referral program;
* Corporate celebrations, team buildings, and fun activities;
* Free meals twice a day, refreshments, happy hours;
* Technical library with option to order books;
* Coaching and reviews to support your career development;
* Comfortable office;
* Working for one of the top social gaming companies in the world;
* Cute and funny corporate events — some of them definitely unforgettable;