Pavle Jonoski, Developer in Bitola, Municipality of Bitola, Macedonia
Pavle is available for hire
Hire Pavle

Pavle Jonoski

Verified Expert  in Engineering

Full-stack Developer

Bitola, Municipality of Bitola, Macedonia

Toptal member since November 2, 2020

Bio

Pavle is a passionate and enthusiastic software engineer with over a decade of experience in software engineering, development, and architecture. His current focus is architecture and implementation of distributed systems, and he contributes regularly to open-source projects. In addition to the United Nations and the City of Dubai, Pavle has worked with many enterprises on different domains, using cutting-edge technologies from all levels of the development stack.

Portfolio

H4
TypeScript, React, NestJS, Amazon Cognito, Auth0, MobX, Open Policy Agent (OPA)...
Keitaro
Agile, Open Source, Node.js, Software Architecture, Microservices, Kubernetes...
X3M Labs
Machine Learning, Software Architecture, Python, Node.js, Java, Git, Spring

Experience

  • Agile - 10 years
  • JavaScript - 10 years
  • Java - 8 years
  • Software Architecture - 8 years
  • Python - 7 years
  • Docker - 5 years
  • Go - 4 years
  • CKAN - 4 years

Availability

Part-time

Preferred Environment

Linux

The most amazing...

...project I've designed and developed from the ground up is a distributed system for processing of large volume of data.

Work Experience

Senior Software Engineer

2021 - 2021
H4
  • Worked on the collaboration features of the product, adding new collaborative features and fixing bugs in the existing software. Contributed to the features such as adding and management of comments, document history, and document drafts.
  • Maintained and implemented new product authentication and authorization system features, primarily with JSON Web Token (JWT) and Amazon Cognito.
  • Contributed to the integration with the support for OPA (the Open Policy Agent) in the existing authorization and authentication system.
  • Worked on the strategy for the migration to Auth0 from the current authentication/authorization framework that the company had.
  • Developed multiple back-end microservices related to document metadata management.
Technologies: TypeScript, React, NestJS, Amazon Cognito, Auth0, MobX, Open Policy Agent (OPA), Docker, Docker Compose, Kubernetes, Skaffold, PostgreSQL, Amazon DynamoDB, Git, TypeScript 3

Software Engineer

2017 - 2020
Keitaro
  • Developed multiple open data portals using the CKAN data platform, including portals for the United Nations High Commissioner for Refugees (UNHCR) and the City of Dubai.
  • Built the architecture and assisted with the implementation of a framework for microservices and accompanying libraries (https://github.com/microkubes).
  • Co-developed in-house business solutions for a telecommunications provider, including a notification and routing distributed platform and integration solutions.
  • Fixed bugs and built infrastructures for Cura—open-source, 3D printing software targeted for LulzBot 3D printers.
Technologies: Agile, Open Source, Node.js, Software Architecture, Microservices, Kubernetes, CKAN, Docker, Java, Go, Python, Git, Spring, Flask, Spring Boot

Software Engineer

2016 - 2017
X3M Labs
  • Played a key role in developing a specialized search engine.
  • Improved the software architecture and implementation of the core of the distributed system for the search engine.
  • Implemented libraries with solutions and algorithms based on academic papers related to problems for which there were no off-the-shelf solutions.
  • Supervised a team of developers to ensure code quality and proper implementation of the system modules.
  • Performed code reviews and ensured that the team implemented and deployed the solutions properly.
Technologies: Machine Learning, Software Architecture, Python, Node.js, Java, Git, Spring

Senior Software Developer and CTO

2015 - 2016
Bestisoft
  • Played a key role in developing a multiplatform application for loyalty programs.
  • Co-developed the application's front end for web and mobile platforms.
  • Implemented back-end integration for the platform services.
Technologies: Angular, Node.js, Java, Git, Spring, Spring Boot

Software Engineer

2015 - 2015
X3M Labs
  • Designed and implemented, from the ground up, a distributed system for processing a large volume of data.
  • Played a key role in implementing a specialized search engine, built on top of the distributed system.
  • Set up the infrastructure for automatic deployment, CI/CD, and monitoring.
  • Assisted with establishing proper Agile methodology for development.
  • Led a team of three engineers who worked on the core of the distributed search engine system.
  • Delivered presentations on software architecture and development patterns.
  • Conducted code reviews to ensure code quality and proper implementation.
  • Used statistical data and system simulations to perform engineering analyses on the system, including performance analysis, resource consumption, efficiency.
  • Implemented libraries with solutions and algorithms and mathematical models to model parts of the system based on academic papers and machine learning models.
Technologies: Puppet, Data Analysis, Software Engineering, Software Architecture, Python, Java, Git, Spring

Software Engineer | Senior Software Developer

2014 - 2015
Sette Media Monitoring
  • Designed and created a web-based platform for customer loyalty programs, built on Java EE.
  • Designed and developed a system for online streaming, real-time communication, and real-time audio processing on a distributed platform.
  • Implemented a speech-to-text system for multiple languages.
Technologies: Streaming, Speech to Text, JavaScript, Node.js, Python, Java, Git, Spring, Flask

Senior Software Developer | Technical Lead

2007 - 2014
IWConnect
  • Played a key role in a wide variety of projects, mainly as a Java EE and web developer.
  • Led a team of four to five people on several projects involving Java EE and ColdFusion.
  • Served as the technical lead and software architect in projects built on Jakarta EE and Java web stack with HTML/JavaScript front ends.
  • Played a key role in developing middleware for a large US cable provider, leading a team of four to build part of the back-end service bus that integrated multiple systems with the billing system.
  • Led a team of three to four people and served as the technical lead while migrating the POS application of a large US telecommunications provider from the old system to the new system, added new functionalities, and fixed production bugs.
  • Designed MicroB3—a web platform for marine microbial biodiversity, bioinformatics, and biotechnology (http://www.microb3.eu)—while serving as the software architect.
  • Served as a technical consultant and led a team of 15 to 20 people during the development of an internal business processing application for a large international corporation.
Technologies: Software Architecture, JavaScript, Java, Git, Spring

Freelance Flex Developer

2006 - 2007
Self-employed
  • Co-developed social networking sites for multiple clients.
  • Designed and built an online exam system in PHP for a client.
  • Developed Drupal extensions and plugins for multiple clients.
Technologies: Drupal, PHP, ActionScript 3

Experience

Microservices Framework

https://www.microkubes.com
An open-source, scalable, and ready-for-use microservice framework. The company I worked for used the framework successfully on multiple projects for different clients. In addition to the software architecture for this framework, I implemented the base microservices, created libraries for the framework in various languages, and wrote deployment scripts for Kubernetes and Docker Swarm. You can see the framework repositories at https://github.com/microkubes.

Data Management Cloud Platform (SaaS)

https://amplusdata.io/about.html
A data management cloud platform that offers CKAN as a service in a SaaS model (https://amplusdata.io). I co-developed the software architecture (based on microservice architecture), played a key role in implementing many of the services, and supervised other developers and reviewed their work.

FOCUS AREAS
* Developed the platform design/architecture
* Designed and implemented modules/services of the platform
* Wrote deployment scripts for Kubernetes with Helm
* Solved tough-to-crack development problems
* Guided developers through the product development process
* Reviewed code
* Fixed bugs

Specialized Search Engine

A specialized search engine that is optimized for specific languages that gathered data from the wild; in other words, from multiple domains and not just scraping the data from specific sites. As a result, the search engine had to handle the discovery of new domains and sites, proper data extraction, and crawler traps.

I designed the distributed system from the ground up, on top of which the engine was implemented. The distributed system executes both real-time and batch jobs. It was designed to handle large amounts of data, function autonomously, and scale horizontally to hundreds (if not thousands) of nodes.

To solve some of the problems that arise—such as ranking, job scheduling, detection of traps or tar pits, performance, and efficiency estimations—for which there is no off-the-shelf solution, I had to implement solutions based on academic papers, perform simulations, and create mathematical models to calculate some behaviors of the system. Data analysis and machine learning techniques were necessary to solve some of the problems.

I implemented the system's core and then led a team of engineers to implement the full system. I also performed code reviews and assisted with the project management methodology.

Theia Log Aggregator

https://github.com/theia-log
A lightweight log aggregator that collects logs from multiple machines and provides the aggregated logs on a single endpoint. It offers real-time viewing of the logs (a log stream) or a historical search of the logs. This is the project that I use as a tool during development, especially when I need to track multiple processes or have many instances on different machines and/or containers. It has collectors (agents that watch and collect the log lines) in Python and Go. I did the full design and implementation.

Education

2004 - 2007

Bachelor's Degree in Computer Science

Sofia University, St. Kliment Ohridski - Bitola, North Macedonia

Skills

Libraries/APIs

Node.js, React, MobX

Tools

Git, Docker Swarm, Helm, Puppet, Amazon Cognito, Auth0, Docker Compose

Languages

Python, Java, JavaScript, Go, ActionScript 3, PHP, TypeScript, TypeScript 3

Frameworks

Spring, Spring Boot, Flask, Angular, NestJS

Paradigms

Microservices, Agile

Platforms

Linux, CKAN, Docker, Kubernetes, Drupal

Storage

PostgreSQL, Amazon DynamoDB

Other

Software Engineering, Software Architecture, Open Source, Computer Science, Machine Learning, Data Analysis, Speech to Text, Streaming, Indexing, Distributed Systems, Web Scraping, Open Policy Agent (OPA), Skaffold

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