Senior Software Engineer

Minsk, Belarus

Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.

DESCRIPTION


Currently we are looking for a Senior Software Engineer for our Minsk office to make the team even stronger.

You will be working on a very interesting project for a Silicon Valley customer, the leader in enterprise secure file sharing and synchronization. Together with customer’s team, you will develop the most complex and important part of the solution – its kernel. Complex code, heavy computing, cutting edge technologies – it’s all about this project. We focus on performance and stability and use the latest features to increase them.

We are looking for seasoned professionals who enjoy coding itself and eager to solve challenging algorithmic and architectural tasks. We provide great opportunities for those who strive to extend their technical knowledge using cutting edge technologies and delivering product of the highest quality.

ABOUT THE CUSTOMER


Our client is an ISV customer from Silicon Valley, with true “startup” spirit within the team, and Google-like approach to work. They provide the same services as Drobox does, but with much more enhanced security, seamless and automatic access to documents, files, and shared folders and many other great features Drobox does not have. For example, file distribution to a mobile workforce, real-time document back-up and continuous availability, and secure large files sending and FTP replacement.

Responsibilities

  • Design & develop new on-premise connector features;
  • Integration with Active Directory;
  • Refactor architecture to support content streaming, improve scalability;
  • Expansion of storage type support (ex.: Azure, SharePoint, etc.);
  • Rewrite Scala-based server application to Java;
  • Participate in scoping, technical designs, design reviews, code reviews on team projects;
  • Develop automated unit, functional, performance and load testing.

Requirements

  • Java 8 core (JVM, GC, memory heap, etc.);
  • Linux OS internals, networking, security;
  • AWS & ESX virtualization;
  • At least 5 years of production software development experience;
  • Proficiency in Java (5+ years);
  • Linux (Cent OS) internals and security;
  • Java Virtual Machine (3+ years):
    • Profiling;
    • Crash dump analysis;
    • Garbage Collection fine tuning.
  • Strong communication skills;
  • Experience working with large-scale systems (scale-out architecture).

Nice to have

  • Experience working in a SAAS company with HA systems;
  • Understanding of open source licensing (e.g. GPLv3).

We offer

  • Experience exchange with colleagues all around the world;
  • Competitive compensation depending on experience and skills;
  • Regular assessments and salary reviews;
  • Social package: medical care, sports, family care;
  • Free English classes;
  • Opportunities for self-realization;
  • Friendly team and enjoyable working environment;
  • Flexible working schedule;
  • Corporate and social events.

Why EPAM?

EPAMers appreciate our flexible work environment, great benefits, and opportunities to thrive.

Life@EPAM

Take a sneak peek at our life in and out of the office. We're more than teammates – we're a community of friends.