James Akwuh, Algorithms Developer in Minsk, Minsk Region, Belarus
James Akwuh

Algorithms Developer in Minsk, Minsk Region, Belarus

Member since September 11, 2016
James is a full-stack engineer who focuses on Node.js and JavaScript development. He is extremely experienced in building the architecture and infrastructure of large-scale applications and optimizing their performance for high loads. His knowledge of over a dozen frameworks helps him to deliver the best possible solutions.
James is now available for hire

Portfolio

  • Adform
    Drone CI, MongoDB, Nginx, Kubernetes, Docker, TeamCity, Webpack, Node.js...
  • Prolific Interactive
    Amazon Web Services (AWS), AWS, MongoDB, TypeScript, Node.js
  • Yandex
    Nginx, MySQL, MapReduce, MongoDB, Bash, Python, Angular, Handlebars, Redux...

Experience

Location

Minsk, Minsk Region, Belarus

Availability

Part-time

Preferred Environment

Zsh, ITerm, WebStorm, Git, BREW, MacOS

The most amazing...

...things I've worked on are the implementations of streaming server-side rendering for Node.js apps.

Employment

  • Architect, Technical Lead

    2018 - 2019
    Adform
    • Researched and developed a new unified application development architecture to be used by all front-end teams in the company.
    • Wrote educational posts and technological news on a regular basis to educate all the front-end developers in the company (approximately 50 people).
    • Fixed processes and improved the development culture in mine and involved teams.
    • Led a large step-by-step refactoring of a legacy codebase.
    • Researched and developed a solution for convenient CI/CD integrations with the internal tools (Npm, GitHub, Jira, and more).
    • Established visual tests practice in the company.
    • Introduced a monorepository and led the whole front-end migration process.
    Technologies: Drone CI, MongoDB, Nginx, Kubernetes, Docker, TeamCity, Webpack, Node.js, Redux, React
  • Contractor

    2018 - 2018
    Prolific Interactive
    • Created an FSM (finite state machine) to run automated raffles.
    • Improved code maintainability by introducing DI container, snapshot API tests, error handling strategy, test coverage policies, and more.
    • Increased the performance in a number of endpoints.
    • Reduced boilerplate and thus cost of adding new endpoints.
    • Integrated a MongoDB migrations framework.
    • Integrated number of external services such as Datadog, Bronto SOAP client, Slack, etc.
    • Created and deployed AWS Lambda functions.
    Technologies: Amazon Web Services (AWS), AWS, MongoDB, TypeScript, Node.js
  • Senior Software Engineer

    2016 - 2018
    Yandex
    • Worked on the Yandex.Collections service which allows users to collect images and research interesting topics through enriched image content.
    • Implemented a robust streaming server-side rendering for Node.js which improved the metrics TTFB (time to the first byte) from approximately one second to 70 milliseconds (14 times).
    • Created a pack for using a Spring-like dependency injection in JavaScript. The integrated approach made the modules independent and allowed component-level snapshot testing.
    • Scaled a Node.js application to run on a cluster of 15 machines in three separate data centers under a load of ~100 requests per second (RPS); also set up the rolling update deployment and weighted balancing.
    • Created an Elastic and Kibana cluster to process server and client logs. Set up logging and logs rotation in a multiprocess Node.js application.
    • Moved a large codebase from ES6 to TypeScript.
    • Had regular conference talks on advanced JavaScript topics: server-side rendering, dependency injection, and software development practices.
    • Created a Python MapReduce job which processes large amounts of crawled data and enriches MongoDB collections with related entities.
    • Designed the front-end architecture with the support of server-side rendering using React, MobX, and the Dependency Injection stack.
    • Launched three internal startups starting from scratch (NDA).
    • Developed, from scratch, an extensible masonry solution working at 60 FPS.
    • Created a Lodash-compliant library which reduced its size by three times.
    Technologies: Nginx, MySQL, MapReduce, MongoDB, Bash, Python, Angular, Handlebars, Redux, MobX, React, Node.js, TypeScript, JavaScript
  • Team Lead

    2015 - 2016
    Blue.bi
    • Worked as a scrum master, product owner, and delivery manager for a client—managing a team of four developers.
    • Created a REST specification with usage examples and covering a real-world API with tests.
    • Synchronized the code written with the complex business logic specification (financial sphere).
    • Built a dozen of complex interactive SVG components using D3.js; examples include a circle-shaped progress bar with bundled settings and interactive pagination controls.
    • Developed a platform for private investments, that allows the user to invest not only in specific projects but in the whole segment (e.g., energy). The application has a very enjoyable UI and is a pixel-perfect implementation of the design.
    Technologies: PHPUnit, Doctrine, Symfony 2, MySQL, Nginx, Capistrano, Sass, Gulp.js, Angular, Git, D3.js, Node.js, JavaScript
  • CTO

    2015 - 2016
    Meritale
    • Built a system that collected and analyzed reviews; it was designed to ease the buying process on the internet. The system crawls the internet, extracts important information, and shows it in a usable way.
    • Developed an injectable widget with a web server for use on third-party websites.
    • Designed the architecture, created the development plan and product's MVP scope.
    • Managed successfully a remote team of two developers and one business analyst for the period of nine months.
    • Won a couple of hackathons, participated in a Moscow accelerator (GenerationS) and took a business trip to Israel to widen the network with the Israel startup ecosystem.
    Technologies: Apache Tomcat, Java, Maven, Nginx, Chai, Karma, Gulp.js, Marionette.js, Backbone.js, JavaScript
  • Software Engineer

    2015 - 2016
    XB Software Ltd.
    • Developed a hotel market data and benchmarking platform that allows business clients to analyze performance data and see benchmarking results for the hotel domain.
    • Acted as the main architect: estimated the scope, built the back- and front-end and database architecture, and set up the CI and delivery workflow.
    • Built a complex FileTree component in DHTMLX library. Supported features include drag-n-drop reordering, uploading progress, subtree cloning, and many more.
    • Created a platform which provides both buyers and suppliers with tools that enable real-time tender arranging.
    • Refactored a large complex legacy codebase with a highly coupled business logic.
    Technologies: Tools, PHPUnit, Redis, Laravel, Karma, QUnit, Jasmine, Capistrano, Webpack, Gulp.js, Marionette.js, Backbone.js
  • Web Developer

    2014 - 2015
    StudyQA
    • Developed a smart search platform for programs, universities, and scholarships around the world.
    • Integrated a couple of externals API, including Stripe for subscription payments, Mailjet for email campaigns, and Aviasales for partnership programs.
    • Gained experience working in a remote multinational team.
    • Built a system for processing a large amount of abnormal data and extracting facts from it.
    Technologies: MySQL, Memcached, Kohana, TortoiseSVN, Stripe, Handlebars, Bootstrap, Grunt, RequireJS, AMD, jQuery, Backbone.js
  • Software Engineer

    2013 - 2015
    Freelance Work
    • Created an educational platform which allows students to help each other in solving tasks on different subjects. Included a WYSIWYG editor, live updates with Socket.io, an integrated payment system, and much more.
    • Managed a team of two developers; gained experience in tasks delegation and development planning.
    • Built a new PHP framework (phpaku) from scratch to get a better understanding of all application development steps.
    • Gained experience in project management: developed business requirements and epics, collaborated with freelance designers, and continuously worked on business requirements and feature planning.
    • Implemented all deployment-related work: bought the domain, configured the domain records, set up the virtual machine, and implemented a CI with Buddy.Works.
    Technologies: Object-relational Mapping (ORM), Doctrine, MySQL, PHPUnit, Memcached, Symfony 2, Mercurial, Payment APIs, Less, Grunt, RequireJS, AMD, jQuery, Backbone.js

Experience

  • Yandex.Collections (Development)
    https://yandex.ru/collections

    Yandex.Collections is a service which allows users to collect images and research interesting topics through enriched image content.

  • Adform (Development)
    https://site.adform.com

    Adform is one of the world's largest private and independent advertising technology companies and is best known for its seamlessly integrated DSP, DMP, and ad server.

  • StudyQA (Development)
    https://studyqa.com

    StudyQA is a smart search platform for programs, universities, and scholarships around the world that aims to help students from developing countries (where access to information on higher education abroad is very limited). It helps them to find universities and colleges which suit their interest and match their background and financial resources. Also, the platform assists universities in reaching out to talented individuals around the world and bring diversity to their campuses

  • STR.com (Development)

    A hotel market data and benchmarking platform. The platform allows business clients to analyze performance data and see the benchmarking results for their hotel domain.The data visualization is built on top of AmCharts graphs and a Webix UI.

  • Hibbett Sports (Development)

    Hibbett Sports app allows to shop the latest sneakers, follow upcoming releases, get the latest news on kicks, and enter shoe raffles for up to three stores. If the location offers a raffle, a user can sign up in the app and get notifications when he wins the raffle.

  • SSR Demo (Other amazing things)
    https://github.com/jakwuh/ssr-demo

    The slides and a demo project for my talk "Server Side Rendering: Do it Yourself".
    Also, the video is available here: https://www.youtube.com/watch?v=H4GTPbf0D40

  • Webtip (Other amazing things)

    A technical blog where I share only useful knowledge in an unobtrusive way—such as not to distract people but lets them evolve their programming skills by picking the most interesting tips.

    Website: https://akwuh.me/t
    GitHub: https://github.com/jakwuh/webtip
    Telegram: https://t.me/webtip

  • 7industry (Development)

    7industry is the place for communication between suppliers and buyers. It provides both buyers and suppliers with tools enabling real-time monetary arrangements.

  • Crowdfunding Platform (Development)

    The platform was built around the idea of providing a few levels of detail about the crowdfunding process. A man could invest either in a single project or in an entire category (e.g., "energy" projects). Technically our team built a SPA application with a very straightforward and enjoyable UI.

  • Meritale (Development)

    Meritale is a system for collecting and analyzing reviews—it is designed to ease the buying process on the internet. Our main purpose is to make the process of choosing and comparing goods as clear and easy as possible. That’s why Meritale is not only about collecting reviews but also about analyzing them to present in a more usable way and, moreover, to pick out the most important information in order to show the world’s opinion on the only page.

    The core of Meritale consists of reviews and rating widgets, a control panel, an internal reviews network, and an analytics system. The major competitive advantage of the project is the possibility of supplying a store with many reviews instantly at the moment of connecting to the service. In addition, our product motivates consumers to leave new reviews which increases their loyalty.

  • TaskRoom (Development)

    TaskRoom is an educational platform which allows students to help each other in solving various problems.

  • ACM Algorithms (Other amazing things)
    https://github.com/jakwuh/acm

    The repository with algorithms on ACM topics. It contains:
    1. A binary search
    2. A comparison of the search algorithms
    3. Dijkstra's and Ford's graph searching algorithms based on adjacency class, binary heap, dynamic list, static and dynamic stack, Treap, and solutions for ACMP tasks

  • FSM RegExp Matcher (Other amazing things)

    A detailed blog post describing the implementation of a RegExp matcher using a finite state machine.

Skills

  • Languages

    JavaScript, TypeScript, Sass, Less, C, Java, C++, Bash, Python
  • Frameworks

    Redux, Angular, Laravel, Kohana, QUnit, Jasmine, PHPUnit, Symfony 2, Bootstrap
  • Libraries/APIs

    Vue.js, Handlebars, RequireJS, Node.js, jQuery, MobX, Backbone.Marionette, Backbone.js, React, Chai, Marionette.js, Doctrine 2, Facebook API, Stripe API, D3.js, Doctrine, Stripe
  • Tools

    Webpack, Git, Kibana, Nginx, Gulp.js, Karma, WebStorm, ITerm, Zsh, Grunt, Mercurial, TortoiseSVN, Apache Tomcat, Supervisor, TeamCity, Jenkins, Ansible, RabbitMQ, Capistrano, Maven, Subversion (SVN)
  • Paradigms

    Continuous Integration (CI), E2E Testing, Unit Testing, REST, Dependency Injection, Functional Testing, Test-driven Development (TDD), Scrum, Object-relational Mapping (ORM), MapReduce
  • Other

    Architecture, High-load, Infrastructure, Leadership, Algorithms, Tools, Payment APIs, AWS
  • Platforms

    Drone CI, Docker, MacOS, Windows, Linux, AWS Lambda, DigitalOcean, BREW, AMD, Kubernetes, Amazon Web Services (AWS), Apache2
  • Storage

    PostgreSQL, MySQL, MongoDB, Doctrine MongoDB ODM, Elasticsearch, Redis, Memcached

Education

  • Bachelor's degree in Computes Science
    2014 - 2018
    Belarusian State University - Minsk, Belarus
  • Bachelor's degree in Nanotechnology
    2013 - 2014
    Belarusian State University - Minsk, Belarus

Certifications

  • IT Essentials: PC Hardware and Software
    MAY 2012 - PRESENT
    Cisco Systems, Inc.

To view more profiles

Join Toptal
Share it with others