Main stacks are .NET Core and Scala (Kafka Streams) We keep code in gitlab and use gitlab CI for our CICD pipelines Our services run in kubernetes, mostly in premises with some loads running in AWS We monitor services using prometheus, observe metrics in Grafana and check logs via ELK Kafka is our streaming platform, also we use HTTP APIs, databases (mostly mongo), RabbitMQ etc.
— Help 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 it’s implementation is optimal considering all opportunities and constraints;
— Сreate and mentoring a team for perform highly complex tasks;
— Participate and get involved in strategic company initiatives.
— Self-driven self-starter who is excited about overcoming hurdles to get things moving in the right direction;
— Rich hands-on programming experience with at least one modern language such as C# (preferred), or Java, and other object-oriented languages and have a deep understanding of object-oriented design’
— Familiarity with design concepts such as design patterns and UML are also highly desirable;
— 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 will 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. Willingness to own all stages of development process: design, testing, implementation, operational support;
— Leadership skills;
— Strong analytical and problem-solving skills;
— 5+ years of software development experience.
— 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.
— Medical insurance/Sport compensation;
— Sport club participation (football, running, basketball or swimming clubs);
— 100% paid sick leaves;
— 20 working days of paid vacation.
— Competitive salary and сonstant encouragement for your efforts and contribution;
— Bonuses according to company’s policy;
— Welfare (financial support in critical situations);
— 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 our 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.