Tomislav Peharda, Software Developer in Varaždin, Croatia
Tomislav Peharda

Software Developer in Varaždin, Croatia

Member since July 3, 2018
The two great loves of Tomislav’s life are research and tech, which is why he particularly relishes facing new challenges—he gets to deep dive into both when formulating the perfect solution. He's experienced in various areas of computer science, so he can provide quality solutions in web (his primary focus) and desktop app development as well as penetration testing, reverse engineering, machine learning, and algorithmic problems.
Tomislav is now available for hire

Portfolio

  • NDA Company (Autonomous Vehicle)
    GIS, Mapbox, RxJS, Test-driven Development (TDD), Go, REST APIs, PostGIS...
  • GR DIGITAL
    REST APIs, Socket.IO, Flow, GraphQL, MongoDB, MySQL, C#, Lua, WordPress, PHP...
  • Xfire
    REST APIs, Sockets, Algorithms, Java, PHP

Experience

Location

Varaždin, Croatia

Availability

Part-time

Preferred Environment

VS Code, Visual Studio

The most amazing...

...thing I've coded is a proxy for a multiplayer game which enables tracking each user's activity on the server over the web application in the real time.

Employment

  • Full-stack Web Developer

    2019 - PRESENT
    NDA Company (Autonomous Vehicle)
    • Worked as a full-stack developer; unable to share further details.
    Technologies: GIS, Mapbox, RxJS, Test-driven Development (TDD), Go, REST APIs, PostGIS, PostgreSQL, TypeScript, Node.js, React, JavaScript
  • Full-stack Web Developer

    2017 - 2018
    GR DIGITAL
    • Developed several game plugins and web applications that use React.js (Redux) and Vue.js (Vuex, Nuxt) on the front end and Node.js on the back end. Some of the technologies and concepts used on the back-end: Express, REST APIs, external APIs, GraphQL, manual caching, OAuth 2, WebSocket (Socket.io), and more.
    • Built a game add-on in Lua that extends a game plugin functionality.
    • Developed extensions in C# to increase performance and override JavaScript limitations on a platform on top of which game plugins are built.
    • Constructed web applications in PHP (WordPress, WooCommerce, and Visual Composer).
    • Styled several web applications in HTML, CSS, and Sass (styled components) that also included patterns of templating.
    • Developed functional programming, ES6 (Babel), Webpack, Flow, Linters, NPM, and more.
    • Configuring and administered server (Unix), setting up the deployment process (Naught and PM2).
    Technologies: REST APIs, Socket.IO, Flow, GraphQL, MongoDB, MySQL, C#, Lua, WordPress, PHP, Node.js, Vue.js, React, JavaScript
  • Web Developer

    2014 - 2015
    Xfire
    • Coded a universal PHP-based algorithm that would report a game match stats to a tournament platform (Xfire) once a corresponding match has been found/finished based on a user's game ID. It would query a game API based on a given criterion and if a corresponding game match was not found it would report a no-show after a length of time was surpassed.
    • Supported a number of games with the above algorithm including Heroes of Newerth (HoN), SMITE, StarCraft II: Wings of Liberty (SC2), World of Tanks (WoT), and League of Legends (LoL).
    • Developed a CSGO match supervisor/watcher which would report detailed match stats including a player kills, deaths, assists and so on to the Xfire tournament platform in real time.
    • Implemented a Java-based match supervisor/watcher which also took care of the warm-up/ready-up period, time-outs, disallowing unwanted players, and more.
    Technologies: REST APIs, Sockets, Algorithms, Java, PHP

Experience

  • Intrusion Detection System (Machine Learning)

    For my master's thesis, I have developed an intrusion detection system—a neural network (model) that inspects network traffic requests in order to determine whether a request is an intrusion or a valid request (the output of the model is a class of an intrusion).

    The model is developed in TensorFlow, and it utilizes a Random Forest concept to minimize the number of attributes needed for the computation. It is based on the KDD1999 dataset. Different methods, utilities, and metrics have been used to examine the dataset and provide the most accurate solution.

    In my thesis paper, I've used various data science approaches to examine the quality and diversity of the KDD1999 dataset. I also have shown how different neural network configurations (number of layers, number of neurons, activation function, regularization, and so on) impact output precision.

    Technologies: Pandas, NumPy, Python, TensorFlow (Keras API), Random Forest

  • Freelance Projects

    I've worked on various projects for a range of clients including a law firm, a logistics company, and a gym.

    Law Firm
    The purpose of this web application (which also worked on a phone) was to enable the law firm to schedule and track appointments. Each appointment would have a detailed history of events. A user was also able to set notifications for each appointment.

    Logistics Company
    This web application was used to track drivers, trucks, trailers, destinations, and the like, however, the primary focus of the app was to have a weekly preview of an each user's schedule on a dashboard that is also highly interactive thus simplified the process of creating weekly schedules at the organizational level.

    Gym
    For this client, I built a web app that was meant to be used to track each user's subscriptions. A gym would have an RFID reader at the entrance requiring each user to scan their subscription card. That way, the owner would, in real-time, have access to the number of users at the gym — seeing whether any of them has not yet paid their subscription or such. The application also implemented various analytics previews.

    Technologies: PHP, HTML, CSS, JavaScript, MySQL, jQuery, Bootstrap

  • Reverse-engineering Games

    I've also reverse-engineered games with the Cheat engine, x96dbg, IDA disassembler, and developed both internal and external modifications in C# and C++. A strong knowledge base of x86 architecture and Assembly was the main priority.

    Some of the main activities in the process are: analyzing and finding proper memory addresses, examining the Assembly code and making changes that would affect the game behavior, developing modifications that override memory locations and also invoke game functions in order to achieve the desired functionality, bypassing basic security mechanisms (some games would detect if the memory location value gets changed externally, other security mechanisms include updating multiple memory locations with the same value).

  • zPAM and ServerBot for CoD2

    I developed an open-source modification in C/C++ for CoD2 to improve their competitive gameplay which was officially used in every game league that supported CoD2 (it is estimated that around 20,000 players used the modification). With the introduction of the modification, the game activity on a monthly basis was largely increased.

    ServerBot was a functionality (or even a protocol) within the modification to enable a web application to listen to the server events in real-time and then preview them. The web application that I've built to make use of ServerBot was able to listen to 5 game servers simultaneously with ability to preview the events in real-time or with a delay.

  • Mobile Games and Applications

    During my mobile development journey, I created a cross-platform application for storing user credentials on a phone and use the credentials to automatically sign-in into web applications. The primary focus was put on application security and data encryption.

    I've worked on a multiplayer (peer-to-peer) game that utilized match-making system support through a central server to enable players to find an opponent automatically (also, the central server was used to store a user's stats). Once an opponent has been found, the communication between users no longer went through the central server but sockets (peer-to-peer connection). TCP hole-punching was used for players to establish a connection.

    Technologies: Java, Corona SDK, Lua, Hole Punching, MySQL, SQLite

  • JavaScript Components for a Market

    For a JavaScript-based market, I developed highly customizable JavaScript components out of which also included WordPress support. The most successful app I've developed was a scheduler that read events from a JSON file. The component provided multiple language support and on a date click, it would preview all events for that date with location (Google Maps integration) and time.

    The other two components I've worked on were a 3D item slider and a carousel. The focus of the 3D slider was on shopping items—the items would be rotating (in different manners) and on a click, information for the selected item would be shown (a user could define information themselves). The carousel had similar use-case as the 3D item slider, however, the entity of a focus was not shopping items but rather images (therefore, usage, animations provided and implementation were fairly different from the 3D item slider).

    Technologies: JavaScript, jQuery, HTML, CSS, WordPress, JSON

Skills

  • Languages

    JavaScript, HTML, CSS, Sass, ECMAScript (ES6), TypeScript, Java, C#, C++, PHP, GraphQL, Go, Assembly, Lua, Python
  • Frameworks

    Express.js, NestJS, Swagger, Spring Boot, JSF, Bootstrap, OAuth 2
  • Libraries/APIs

    React, Vue.js, Node.js, jQuery, jQuery UI, Three.js, WebGL, Slack API, TensorFlow, Socket.IO, Sockets, REST APIs, RxJS, Passport.js
  • Tools

    Slack, Git, Sony Vegas, Adobe After Effects, Adobe Photoshop, Flow, Webpack, GIS, Visual Studio, VS Code
  • Paradigms

    Functional Programming, Penetration Testing, Agile, REST, Test-driven Development (TDD), Unit Testing, Scrum, E2E Testing
  • Storage

    MySQL, MongoDB, PostgreSQL, PostGIS, SQLite, Elasticsearch, BigTable
  • Other

    Algorithms, GitKraken, Reverse Engineering, System Administration, Discord Bots, APIs, Machine Learning
  • Platforms

    Unix, Docker, WordPress, Mapbox, Amazon Web Services (AWS)

Education

  • Master's Degree in Information and Software Engineering
    2017 - 2019
    University of Zagreb, Faculty of Organization and Informatics - Varaždin, Croatia
  • Bachelor's Degree in Information Systems
    2014 - 2017
    University of Zagreb, Faculty of Organization and Informatics - Varaždin, Croatia

To view more profiles

Join Toptal
Share it with others