Position: Lead .NET Developer (gaming & entertainment industry)
Company: Freelance
Experience required: 5y
Category: .NET
Published: 2020-11-01T00:00:00+02:00

Main tech stacks are .NET Core and Scala (Kafka Streams). Our client keeps code in gitlab and uses gitlab CI for CICD pipelines. Our clients’ services run in kubernetes, mostly in premises with some loads running in AWS. The company monitors services using prometheus, observes metrics in Grafana and checks logs via ELK. Kafka is its streaming platform, our client also uses HTTP APIs, databases (mostly mongo), RabbitMQ etc.

TO DO LIST:
•	Help to define the system architecture, own and implement specific components, and help shape the overall experience;
•	Build distributed systems that are reliable, maintainable and scalable;
•	Functionally decompose complex problems into simple, straight-forward solutions;
•	Write high-quality, efficient, testable code following best practices and team standards;
•	Ensure that services built by the team satisfy both functional and non-functional requirements;
•	Understand the business domain;
•	Make sure that its implementation is optimal considering all opportunities and constraints;
•	Create and mentor a team for performing highly complex tasks;
•	Participating and getting involved in strategic company initiatives.

QUALIFICATIONS:
•	5+ years of software development experience;
•	Self-driven self-starter who is excited about overcoming hurdles to get things moving in the right direction;
•	.NET Core, ASP.NET Core hands-on programming experience;
•	Java/Scala or other object-oriented languages and having a deep understanding of object-oriented design;
•	Familiarity with design concepts such as design patterns and UML;
•	Practical experience with software engineering best-practices is a big advantage. Deep understanding of distributed systems, asynchronous architectures and scalability are highly desirable. The ideal candidate should have implemented at least one large scale enterprise, fault-tolerant distributed system;
•	Computer Science fundamentals in algorithms, data structures, databases, and complexity analysis;
•	Strong ownership skills. Willingness to own all stages of development process: design, testing, implementation, operational support;
•	Leadership skills;
•	Strong analytical and problem-solving skills;

NICE TO HAVE:
•	Java/Scala skills;
•	Exhibits excellent team work;
•	Results oriented;
•	Knowledge of functional programming paradigm;
•	Experience with distributed CQRS & Event Sourcing built with TDD on Scala;
•	Skills working with Kafka, Kafka Streams, RabbitMQ, AWS, Redis, Aerospike;
•	Hands-on experience with running .NET apps using Docker, Kubernetes.

QUIRKS & PERKS:
•	Competitive monthly salary 5000-6000$ before taxes (depending on your skills and experience);
•	Bonuses according to company’s policy;
•	Medical insurance/Sport compensation;
•	Sport club participation (football, running, basketball or swimming clubs);
•	100% paid sick leaves;
•	20 working days of paid vacation.
•	Welfare (financial support in critical situation).
•	Gifts for significant life events (marriage, childbirth).
•	Individual annual training budget with an opportunity to visit paid conferences, training sessions, workshops etc.;
•	Free corporate library;
•	Opportunity to visit non-stop internal meetups: open talks, IT Pump, etc. as a participant or a speaker and exchange knowledge;
•	A world-class team of T-shaped skilled professionals that share knowledge and support each other.
•	Corporate parties and events (Pub Quiz, Carquest, bowling championships, etc.);
•	PM Foundation activities (social responsibility events);
•	Weekly events aimed at culture, arts, soft skills development.