Barys Yakavita, Developer in Minsk, Minsk Region, Belarus
Barys is available for hire
Hire Barys

Barys Yakavita

Verified Expert  in Engineering

Software as a Service (SaaS) Developer

Location
Minsk, Minsk Region, Belarus
Toptal Member Since
February 5, 2020

Barys is a full-stack software developer with a wide range of skills and production experience in a variety of areas. His primary programming language is Java. His analytical mind and perseverance allow him to dig into the details and find and resolve the cause of critical product bugs in a short amount of time. In addition to his development experience, he has also held leadership, entrepreneur, and researcher roles.

Portfolio

AutoRABIT LLC
Spring Boot, Spring Security, React, SonarQube, Amazon Web Services (AWS)...
CodeScan Enterprises LLC
JavaScript, Java, CSS, Java 8, JavaScript MVC, React...
Tether Energy
Amazon Web Services (AWS), Pulumi, Windows PowerShell, Bash, XSLT, Big Data...

Experience

Availability

Part-time

Preferred Environment

Apache Maven, Jenkins, Eclipse, IDEA IDE, Linux, Windows, SonarQube

The most amazing...

...project I’ve created was a traveler website for Belarus with accommodation and excursion booking that won the Belarus republican competition in 2018.

Work Experience

Product Architect

2021 - PRESENT
AutoRABIT LLC
  • Implemented SAML-based SSO login with multi-tenancy support in Codescan Cloud. It was its own implementation based on Spring Boot and Spring Security.
  • Implemented SARIF reports in Codescan Cloud. This feature allows displaying code analysis results from Codescan inside GitHub repo.
  • Enabled Static Application Security Testing (SAST) file reports in Codescan. This type of report allows displaying security vulnerabilities found by Codescan inside Gitlab directly.
  • Improved maintainability of the product code by migrating from legacy Servlet APIs to Spring Boot architecture.
  • Migrated product deployments from AWS ECS to Kubernetes, which helped improve the whole architecture's scalability and failover resistance.
  • Implemented multi-worker features inside the SonarQube Compute Engine, which helped to solve a major bottleneck inside the multi-tenant architecture.
Technologies: Spring Boot, Spring Security, React, SonarQube, Amazon Web Services (AWS), Docker, Docker Compose, Bitbucket API, GitHub API, GitLab, Static Application Security Testing (SAST), Microservices Architecture, AWS DevOps, CI/CD Pipelines, Multitenancy

Senior Java Developer

2020 - 2021
CodeScan Enterprises LLC
  • Implemented over 20 new static code analysis rules for Salesforce Apex, VisualForce, and Metadata languages.
  • Migrated the core part of the product from Sonarqube 7.x to Sonarqube 8.5. I ported the old Organization features from SQ 7.x into SQ 8.5 UI, which are used for multi-tenancy in Codescan Cloud.
  • Improved Salesforce Metadata parsing to fix memory errors caused by larger types. It helped to resolve code analysis failures for several big projects.
  • Implemented CodeScan Cloud GitLab integration which helps to set up Gitlab repo analysis quickly via Codescan UI. It was one of the most wanted features from several clients.
  • Enhanced the Codescan Apex Parser to support the new Safe Navigation Operator in the Apex language.
  • Implemented a new Webhook integration type which brought important integration partners into Codescan Cloud (e.g., Copado). It significantly extended the number of customers using Codescan to analyze their code.
Technologies: JavaScript, Java, CSS, Java 8, JavaScript MVC, React, Amazon Elastic Container Service (Amazon ECS), ESLint, Salesforce Apex, Abstract Syntax Trees (AST), Amazon Web Services (AWS)

ETL Architect

2020 - 2020
Tether Energy
  • Worked on creating ETL scripts for downloading and transforming various datasets into a common data schema within Presto and Hive data warehouse hosted on AWS.
  • Maintained Pulumi deployment scripts to deploy new ETL scripts and Lambda functions on the AWS infrastructure.
  • Tuned the Airflow scheduler to efficiently run DAGs with a big number of tasks.
  • Wrote new table schemas in SQL for a Presto data warehouse.
  • Created SQL scripts to check for data integrity and load marginal new data from the staging to the production database.
  • Developed additional SQL views to make the data accessible to an end-user (for example, reporting the latest value from a dataset that reports date ranges or data versions).
Technologies: Amazon Web Services (AWS), Pulumi, Windows PowerShell, Bash, XSLT, Big Data, Presto, Apache Hive, SQL, Python, Apache Airflow, Software as a Service (SaaS)

Software Developer

2016 - 2020
Self-employed
  • Created technical architecture of a web app, wrote functional requirements, and created UI mockups.
  • Implemented an excursion search functionality on Elasticsearch.
  • Provided SEO analysis and all product-related changes.
  • Contributed to marketing strategies for the excursion online-booking functionality.
  • Integrated a Bitrix24 CRM service into the booking workflow.
  • Developed the full cycle for booking and paying local tours.
Technologies: Apache Maven, NPM, React, MySQL, PHP 7, Drupal, REST, Elasticsearch, Java, Spring Boot, Software as a Service (SaaS)

Software Developer

2019 - 2019
Street Maps (Self-employed)
  • Installed the Nominatim web app and configured it to run regular updates of OSM data.
  • Created an ingest microservice which parses the latest data from PostgresSQL storage and indexes it to Elasticsearch.
  • Built a multi-lingual website to display the hierarchy of administrative division areas for each European country using Spring MVC with Thymeleaf views and OSM data.
  • Provided SEO analysis and improvement to get more organic traffic for the website.
Technologies: NGINX, Bootstrap, Nominatim, PostgreSQL, OpenStreetMap API, Jsoup, Thymeleaf, Spring Boot, Java, Data Scraping

Chief Software Architect

2016 - 2019
Aurea
  • Led the work of the Jive Analytics team while working in the development team of the Jive product.
  • Completed the migration from the legacy Instagram API to the Facebook Open Graph API.
  • Created a Cloud dev environment for the product on Kubernetes, which consisted of more than 35 microservices.
  • Configured a Jenkins environment for the feature development department used by more than 25 teams and 100+ engineers.
  • Built Java code style guidelines for the feature development department.
  • Configured Checkstyle and IDEA code formatting following the Java code style guidelines. Created tutorials on how to set up Checkstyle in Maven, Gradle Builds, and Jenkins Pipelines.
  • Worked in a newly created centralized code quality team that was reviewing PRs of all company products to standardize coding standards.
Technologies: Amazon Web Services (AWS), Apache Maven, Jenkins, Docker, JPA, REST, Spring Security, Spring Boot, Amazon S3 (AWS S3), Amazon EC2, Amazon Elastic Container Registry (ECR), Amazon Elastic Container Service (Amazon ECS), AWS Lambda, Java

Software Developer

2018 - 2018
Maven Jars (Self-employed)
  • Created a microservice that regularly parses data from the central Apache Maven repository.
  • Implemented an ingest microservice which indexes data about Maven jars into Elasticsearch.
  • Developed a responsive front end using Spring MVC, Thymeleaf, Handlebars, and Bootstrap 4 to present information about Maven jars.
  • Used GitHub API to display SCM information for Maven jars when their sources are stored in GitHub.
  • Provided SEO analysis and code improvements to get as much organic traffic as possible for the newly created website mavenjars.com.
Technologies: Search Engine Optimization (SEO), NGINX, Apache Maven, Bootstrap, Elasticsearch, Retrofit, Jsoup, Hibernate, MySQL, Spring Boot

Software Engineering Manager

2013 - 2016
DevFactory
  • Led four development teams and controlled the release cycles of products as a project manager.
  • Managed the software development process using the Agile methodology.
  • Created release notes and updated technical guides using Adobe FrameMaker software.
  • Participated in meetings with clients, support team, and the CTO to discuss the most critical issues, and provided remote technical assistance.
  • Led the knowledge transfer procedure of an ObjectStore product after its acquisition.
Technologies: TestRail, Adobe FrameMaker, Zendesk, Confluence, Jenkins, Jira, Salesforce

Technical Architect

2011 - 2013
DevFactory
  • Led the development team of the Gensym G2 Real-time Expert product.
  • Prepared technical requirements for new product features.
  • Configured CI builds on Jenkins and fixed build scripts to get them running on Windows.
  • Contributed to monthly releases creation and release notes preparation.
Technologies: ActiveX, XML, Transmission Control Protocol (TCP), C++, CMake, Java, Lisp

Senior Full-stack Developer

2009 - 2011
Exadel
  • Created an API-first microservice app to send personalized emails and SMS notifications to clients.
  • Developed the authentication part in the Luma platform using the Spring Security library.
  • Patched the Apache FOP library and fixed the Postscript renderer to get it to correctly calculate positions of full-page image backgrounds.
  • Created a bunch of REST web services and integrated them into front-end components.
Technologies: ActionScript 3, Adobe Flex, Apache FOP, Hibernate, JPA, Jersey, JAX-RS, Spring Security, Java, Software as a Service (SaaS)

Senior Java Engineer

2007 - 2009
EPAM
  • Contributed to a big maintenance team that supported the ATG platform.
  • Managed root cause analysis and bug fixing in ATG Web Commerce product.
  • Worked on backporting bug fixes and minor features into previous ATG versions.
  • Mentored junior software engineers and led internal courses about JPA and its practical usage in J2EE applications.
Technologies: Apache Ant, WebSphere, WebLogic, JSTL, Jakarta Server Pages (JSP), ATG Web Commerce, Jakarta EE, Software as a Service (SaaS)

Java Developer

2006 - 2007
EPAM
  • Worked as a level 3 maintenance engineer on a web app that was a freight rate and carrier management solution.
  • Managed CI and release cycles of the product, and worked on preparing release notes.
  • Created new feature requirements and improvement proposals together with a business analyst.
Technologies: Oracle PL/SQL, Oracle, JDBC, JSTL, Jakarta Server Pages (JSP), Apache Struts, Java

Excursion Booking Website for Tourists in Belarus

Worked on the implementation and maintenance of the online booking part of the service. I added integration with the Bitrix24 CRM system and implemented algorithms to measure users' engagements. Also, I used this data to segment users and improve marketing campaigns.

Web App with Catalog of Saunas in Belarus Country

https://bani.by/sauny/minsk
A web application allowing users to add saunas and manage their availability.
I created the entire architecture of the app and implemented the back end with the Spring Boot framework, and implemented stored procedures on the PostgreSQL side.

SaaS Platform for Creating Code Work Spaces in Cloud

https://www.devspaces.com
Developed a SaaS platform that provides a shared Cloud environment for creating a Cloud workspace synced with SCM or local IDE. The benefit of the platform is that when you make a change in SCM or your local IDE, the changes are automatically pushed to the cloud docker container. All resource-consuming processes like build or deployment can be run in the cloud.
Technologies: Spring Boot, Amazon ECS, Amazon S3, Amazon ECR, GitHub API, Docker Compose, RESTful APIs, AngularJS

Microservice for Sending Personalized Emails

Created a web app with a REST API to send personalized emails with attached documents to the clients of insurance companies specializing in selling insurance policies in Holland. I have created about one hundred XSLT templates. They are used to generate an email body and PDF invoices.
Technologies: Spring Framework, JavaMail, XSLT, JAXB, Apache FOP.

App to Build Analytical Reports in Google Spreadsheets using Jira Data

Created a web app to fill out aggregated analytical reports in a Google spreadsheet daily. It's used by project managers and the director of the department to track the progress of quarterly goals.
- Added a login screen to sign in with Google OAuth.
- Included a screen where the project manager enters the URL of the Google spreadsheet and sees the list of sheets that meet template requirements (special value in the first cell).
- Implemented the logic of querying data from Jira, transformation data, and loading into the selected Google spreadsheet.
- Added a CronJob to fill out spreadsheets on a scheduled basis.
Technologies: Spring Boot, Spring Security, Google OAuth, Jira, Jira REST API, Google API, Quartz, JHipster, Angular.

Wind Visualization Using WebGL JavaScript API

Implemented wind visualization on the OpenStreetMap map. The rendering is implemented using WebGL Javascript API. The GRIB2 forecasts data is downloaded every 30 minutes from NOMADS NCEP servers and converted to JSON format so that it can be easily used in JavaScript.
Technologies: WebGL, JavaScript, jQuery, OpenStreetMap, Leaflet, Spring Boot, GRIB2, grib2json.

ETI EXTRACT

https://www.ignitetech.com/eti/#eti
Worked as a technical architect on an industrial-grade ETL product: ETI (aka ETI EXTRACT). Led the development of a modern user interface for ETI. Assisted clients with ETI configuration and created ETL programs for their production needs and data models.
Technologies: ETL, Relational Databases: Oracle, SQL Server, DB2, Java, C++, Linux, Telnet, FTP, TCP/IP.

Data Extract and Transform Load

Worked on creating ETL scripts for downloading and transforming various datasets into a common data schema within Presto and Hive data warehouse hosted on AWS.
Technologies: Python, SQL, Apache Hive, Presto DB, XSLT, Bash, PowerShell, AWS CLI, Airflow.
AWS services: EC2, ECS, ECR, S3, RDS, EMR, IAM, SNS, SQS, SSM, CloudWatch.

Languages

Java, SQL, XSLT, XML, HTML5, Bash, Bash Script, PHP 7, ActionScript 3, CSS3, JavaScript, CSS, Python, PHP, Python 3, Java 8, Lisp, C++, GraphQL

Frameworks

Spring Boot, Spring MVC, Spring Security, Spring ORM, Spring 5, Spring JDBC, Hibernate, Spring Microservice, Swagger, Thymeleaf, Jakarta Server Pages (JSP), JUnit, Bootstrap 3, OAuth 2, Windows PowerShell, Presto, Google Guava, Adobe Flex, Protractor, JSON Web Tokens (JWT), Jersey, JPA, Apache Struts, ActiveX, Bootstrap, Red5 Media Server, Jest, AngularJS, WebFlux, JavaScript MVC

Libraries/APIs

Retrofit, Spring REST, JDBC, Google Gson, Jackson, JAXB, JAX-RS, SpringFox, Apache HttpClient, Jsoup, SLF4J, JSTL, JSR 310, AssertJ, React, React Redux, Retrofit 2, Jenkins Pipeline, Google Maps API, Google Drive API, Liquibase, JSON API, Google API, Google Places API, Google Maps, Quartz, REST APIs, Node.js, OpenWeatherMap, Leaflet, GitHub API, Selenium API, Apache POI, iText, Handlebars, JSONP, React-Intl, jQuery, jQuery UI, Viber API, Jira REST API, Salesforce API, Yandex API, Yandex Maps API, PayPal API, Amazon MWS, Facebook Open Graph API, Bing API, YouTube API, ImageMagick, Reactstrap, Antd, Preact, Gmail API, Slack API, Auth0 API, OpenStreetMap API, JasperReports, Reactor, Bitbucket API

Tools

Boto 3, Apache Airflow, IntelliJ IDEA, Eclipse IDE, Android Studio, Apache Tomcat, NGINX, Apache Ant, Gradle, Apache Maven, GitHub, Bitbucket, ETI•Extract, MySQL Workbench, FullCalendar, CKEditor, PHP-FPM, MapStruct, Postman, Git, Subversion (SVN), Jira, Confluence, Jenkins, Google Webmaster Tools, Flyway, Spreadsheets, Microsoft Excel, Google Docs, Google Keyword Planner, SonarQube, AWS SDK, Amazon CloudWatch, NPM, Xcode, Apache HTTP Server, Jetty, GeoNames, Azure DevOps Services, Composer, Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Container Registry (ECR), Amazon Simple Queue Service (SQS), Java Amazon SDK, Docker Compose, TestRail, TeamCity, Google Analytics, Kafka Streams, Auth0, Amazon Elastic MapReduce (EMR), IDEA IDE, ATG Web Commerce, CMake, Adobe FrameMaker, Wowza, GitLab, Docker Swarm, Bing Webmaster

Paradigms

RESTful Development, Microservices Architecture, Unit Testing, REST, REST API Architecture, Continuous Delivery (CD), Continuous Integration (CI), Azure DevOps, ETL, E2E Testing, Responsive Layout, Agile Software Development, Functional Programming, DevOps, Search Engine Optimization (SEO), ETL Implementation & Design, Functional Testing, Reactive Programming

Platforms

Java EE, Drupal 7, Jive, Jakarta EE, Drupal 8, Amazon Web Services (AWS), Amazon EC2, AWS Lambda, Docker, Heroku, Linux, Ubuntu, Windows, Eclipse, Oracle, WebSphere, Salesforce, Drupal, IBM WebSphere, Zendesk, Apache Kafka

Storage

MySQL, MariaDB, PostgreSQL, PostGIS, Elasticsearch, Memcached, Spring Data JPA, Spring Data REST, Spring Data Elasticsearch, Spring Data MongoDB, JSON, Amazon S3 (AWS S3), SlimPHP, Apache Hive, Oracle RDBMS, MongoDB, SQL Server 2010, Redis Cache, Oracle PL/SQL, Amazon Aurora, JBoss AS, Redshift, SQL Architecture

Other

Hibernate Validators, RESTful Microservices, Apache Commons, log4j, Apache FOP, Project Lombok, CSV, Integration Testing, Axios, Web Scraping, Data Scraping, Scraping, SaaS, Architecture, Software Architecture, Full-stack, Google Tag Manager, OAuth, JSON REST APIs, Amazon Route 53, APIs, API Integration, Lambda Functions, Undertow, OpenStreetMap, EclipseLink, ETL Tools, Logback, HTTP, HTTPS, Bitrix24, Web Analytics, AWS DevOps, Organic SEO, Google SEO, ETL Development, Software as a Service (SaaS), CRM APIs, Customer Relationship Management (CRM), Software Design, Leadership, ESLint, Abstract Syntax Trees (AST), WebLogic, Transmission Control Protocol (TCP), Nominatim, Big Data, Pulumi, BEA WebLogic Server, Microsoft Azure, Chatbots, Viber Bots, Yandex.Direct, Amazon Kinesis, Slackbot, WebSockets, Reactive Streams, Salesforce Apex, Static Application Security Testing (SAST), CI/CD Pipelines, Multitenancy

2013 - 2016

Bachelor’s Degree in Public Administration and Law

Academy of Public Administration - Minsk, Belarus

2008 - 2009

Master's Degree in Computer Science

Belarusian State University - Minsk, Belarus

2003 - 2008

Bachelor’s Degree in Applied Mathematics and Computer Science

Belarusian State University - Minsk, Belarus

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring