Scroll To View More
Igor Geshoski

Igor Geshoski

Skopje, Macedonia
Member since November 19, 2015
Igor has been working on large-scale Java based enterprise applications for about five years. In his career, he has been a part of projects with very challenging business logic. With a strong background in algorithms and problem solving, Igor always strives towards the most optimal and generic solutions that fulfill the strictest quality requirements. He is considered a team player and a constant support to his teammates on each team he's joined.
Igor is now available for hire
  • Java, 6 years
  • Object-oriented Programming (OOP), 6 years
  • SQL, 5 years
  • JavaScript, 5 years
  • Spring, 4 years
  • Hibernate, 4 years
  • AngularJS, 3 years
Skopje, Macedonia
Preferred Environment
Windows OS, IntelliJ IDEA (or Eclipse IDE), Git
The most amazing...
...thing I've coded is a convolutional neural network for face recognition with an additional generic module for parameters optimization using genetic algorithms.
  • Senior Full-stack Developer
    Tradeworks (via Toptal)
    2017 - 2017
    • Worked as a full stack developer in a Java/Spring back-end and Angular 4 front-end.
    • Set up a microservice infrastructure based on Spring technologies.
    • Created a Java migration framework for AWS DynamoDB inspired by Flyway. The framework was based on the Java AWS SDK.
    • Set up the Angular 4 front-end, leveraging the Angular CLI to create full project build pipeline that executes lint, testing, and AOT build.
    • Created a Node tool that executes "consistency" code tasks to maintain high front-end code quality (additional to Lint).
    • Created a user-friendly, Angular 4 based expression editor for easy creation of trading strategies.
    • Did detailed reviews on the front-end and back-end code.
    Technologies: Java, Spring Boot, Angular 4
  • Software Engineer
    2013 - 2017
    • Developed along the full stack for two and a half years on a platform for evaluating real estate: Java-based web application with Spring for the back-end and AngularJS front-end.
    • Contributed to the development of software for calculating withholding tax for a Swiss bank.
    • Collaborated to create a CQ5 based web application for a Swiss health insurance company.
    • Prepared and performed training on "Java web applications" for new employees.
    • Created an internal tool for retrieving employee work logs and matching them with the corresponding task with a proper export to perform different statistics.
    Technologies: Java, Spring (Core, MVC, Security), Hibernate, JavaScript, AngularJS
  • Platform for Evaluating Real Estate (Development)

    Platform that supports many different types of real estate evaluations. The platform also contains a complex security system setup allowing fine-grained access control.
    Worked as a full-stack developer, on the Java (Spring) based back-end and on the AngularJS based front-end.
    Also, provided support for new teammates.

  • Withholding Tax Calculation (Development)

    Software for calculating withholding tax for a Swiss bank that has branches in many European countries. Project with tough business logic, built in a generic and scalable manner to support the financial laws of different countries regarding the withholding tax calculation. Worked as a Java developer.

  • Web Portal for a Health Insurance Company (Development)

    CQ5 based web portal for a health insurance company. The project allowed the administrators to dynamically update the content of the portal. Also, as part of the portal, the users could use many of the calculators for calculating their health insurance plan. Worked as a full-stack developer, leveraging the Adobe CQ5 large-scale web content management system.

  • Forex Trading Platform (Development)

    Platform for Forex trading with a main focus for users that don't have in-depth knowledge of algorithms or some programming techniques to create complex strategies for trading. A main focus of the platform is to allow users to enter expressions (in a user-friendly editor) that will later on be evaluated as strategies for trading. There's a possibility to run back-tests to test some trading strategy against historical data and also to let some strategy run and trade automatically for some specific amount of time and retrieve real-time performance analysis of each trading strategy. The project was built using Java/Spring Boot in the back-end and Angular 4 in the front-end. The back-end was structured in a micro-service architecture manner. By that, all the different back-end and front-end requirements imposed a real technical challenge.

  • Working with Angular 4 Forms: Nesting and Input Validation (Publication)
    Validating user inputs is an essential part of any robust web application. Angular 4 makes it especially easy for both template-driven and reactive forms. In this article, Toptal Freelance Angular Developer Igor Geshoski walks us through the different approaches in Angular 4 form validation and shows how even complex form validation can be done easily.
  • Igor is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. Igor shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.
  • Languages
    Java 7, Java 8, Java, HTML, SQL, JavaScript, CSS, HTML5, TypeScript, XML, LESS, Sass, PL/pgSQL
  • Frameworks
    Spring, Angular, Mockito, JUnit, Spring IoC, Hibernate, Spring MVC, Spring Security, AngularJS, Spring ORM, Hibernate ORM, Jasmine, UI-router, Protractor, Kendo UI, JSON Web Tokens (JWT), Angular Material, JPA, Spring JDBC, JavaCV, Google Guava, Bootstrap, Select2
  • Tools
    JDK 8, Servlet, Apache JMeter, JMeter, Bower, Git, Git flow, JVisualVM, IntelliJ IDEA, Grunt.js, Apache Maven, Apache Tomcat, Chrome Developer Tools, UI Grid, Maven, Grunt, AWS SQS, Angular CLI, Karma, Docker Compose, Java Amazon SDK, AWS Push Notification Service (AWS SNS), JIRA, Jenkins, Eclipse IDE, Flyway, AWS CloudFormation, Subversion (SVN), AWS SDK, Webpack, NPM, Auth0, YourKit, Gulp.js
  • Paradigms
    Dependency Injection, Unit Testing, Domain-driven Development, Load Testing, Agile, Functional Programming, Agile Software Development, Test-driven Development (TDD), Object-oriented Design (OOD), Spring Aspect-oriented Programming (AOP), Object-oriented Programming (OOP), Continuous Delivery (CD), Continuous Integration (CI), Microservices Architecture, Microservices
  • Platforms
    Spring Boot, Docker, Amazon Web Services (AWS), JEE, Windows 7, Unix
  • Storage
    Spring Data JPA, JSON, Spring Data, DynamoDB, AWS DynamoDB, JSON Web Tokens (JWT), H2, Oracle 11g, PostgreSQL, NoSQL
  • Misc
    Spring Transactions, Maven XML, Servlets, HTTP, HTTPS, AJAX, Integration Testing, Version Control, Project Lombok, log4j, Angular Bootstrap, UI Router, Evolutionary Algorithms, Spring Cloud, Algorithms, Data Structures, Hamcrest, Apache Commons, Annotation Processors
  • Libraries/APIs
    REST API, JDBC, jQuery, Spring REST, WebSockets, Java Servlets, SLF4J, Lodash, QueryDSL, Stomp.js, Guava, Apache POI, Node.js, JasperReports, D3.js, Auth0 API, JMS
  • Master's degree in Intelligent Information Systems
    Faculty of Computer Science and Engineering - Skopje, Macedonia
    2013 - 2017
  • Bachelor's degree in Informatics and Computer Engineering
    Faculty of Computer Science and Engineering - Skopje, Macedonia
    2009 - 2013
I really like this profile
Share it with others