Nikola Đuza, Software Developer in Novi Sad, Vojvodina, Serbia
Nikola Đuza

Software Developer in Novi Sad, Vojvodina, Serbia

Member since November 22, 2017
Nikola is a software engineer that enjoys tackling serious problems and solving them with a minimal set of tools and maximum elegance. He loves working with Ruby and is most comfortable with Ruby on Rails, React, and Elixir.
Nikola is now available for hire

Portfolio

Experience

  • Ruby on Rails (RoR), 5 years
  • Ruby, 5 years
  • Cucumber, 5 years
  • Test-driven Development (TDD), 5 years
  • RSpec, 5 years
  • Redux, 3 years
  • React, 3 years

Location

Novi Sad, Vojvodina, Serbia

Availability

Part-time

Preferred Environment

Mac OS, Linux, vim, oh-my-zsh, iTerm2, GitHub

The most amazing...

...thing I've coded is a Ruby gem for asynchronous rendering of page parts. It's simple but useful.

Employment

  • Full-stack Web Developer

    2018 - 2019
    Integral Agile (via Toptal)
    • Built new features in React UI and Rails back end. Everything was running inside Docker containers with docker-compose.
    • Added new custom authorization system on the back end and front end in Rails and JavaScript.
    • Optimized Rails back end API endpoints response time with SQL query optimization.
    • Created better data selection in Redux with reselect library.
    • Wrote Jest and RSpec unit tests.
    • Created login, register, and log out mechanism with email sending that combines API tokens and UI experience for the user. Used mailcatcher, devise_token_auth, and devise gems to make this possible.
    • Implemented drag and drop, drag preview, and drop preview logic in React using react-dnd library.
    • Implemented handling of big lists in React using the react-virtualized library.
    • Transferred async jobs to use Sidekiq instead of ActiveJob for performance reasons.
    • Registered users on Firebase and dealt with permissions for accessing data in Firebase. Both on the back end and the front end.
    • Created multiedit fields that show who is editing viewable text on the screen with Firebase.
    Technologies: Ruby on Rails, React, Redux, Docker, docker-compose
  • Ruby and React Full-stack Web Developer

    2018 - 2018
    Software Lead Weekly (via Toptal)
    • Shipped full features, from Ruby on Rails back end to React front end.
    • Added support for adding a company on a personal profile. Also built a company page which showcases the user within the company.
    • Set up Sidekiq and added Rails mailers for sending emails.
    • Built comment and review part of the website. Users can ask for reviews from reviewers, and enable comments from normal users.
    • Prepared the project for launch with the whole team.
    Technologies: Ruby on Rails, React
  • Software Engineer

    2015 - 2018
    Rendered Text
    • Built AWS deployment integrations for projects. Integrated with services such as Elastic Beanstalk, Lambda, S3.
    • Developed integrations with Docker Registry providers for projects that use Docker.
    • Released a gem for asynchronous rendering of parts of the HTML page.
    • Rewritten the "Build" page of the Semaphore CI using React and Redux, together with Rails API and Pusher.
    • Created a Dockerized web service in Elixir that tracks user's waiting time for a build using RabbitMQ. It also tracks usage in a certain project, and can calculate data for weekly insight mails that is sent to users.
    • Transfered Rails Asset Pipeline assets to the webpack manages assets. Set up Jest and tools like ESLint, prettier inside a big old Rails project.
    • Increased whole JavaScript code coverage to above 95% writing tests with Jest.
    • Kept dependencies up-to-date, both Rails gems and JavaScript packages.
    • Built a page where users can gain insight in ther CI speed and how much are they waiting for their builds to start.
    • Wrote Elixir microservice for sending emails about waiting times to users.
    Technologies: Ruby on Rails, JavaScript, Elixir, Docker
  • Research Scholar

    2016 - 2016
    Rice University
    • Set up crawlers to crawl through Alexa toplists using Python and Scraping Hub.
    • Distinguished websites which block adblocking software from the one that don't by parsing the website's HTML, JavaScript, and HAR.
    • Configured and used a huge cluster of computing power to parse through the scraped data.
    • Created a tool in Rails to scan couple of projects, that track and maintain adblocking related lists, for any recent changes.
    Technologies: Python, C++, Ruby on Rails

Experience

  • Semaphore CI (Development)
    https://semaphoreci.com/

    Worked on a continuous integration service. Built most of the UI parts of the service in Rails and React. Built integrations with AWS Elastic Beanstalk, AWS S3, and AWS Lambda (mostly in Rails). Built integration with all the major Docker Registries (Docker Hub, AWS ECR, Google Cloud Registry, Quay.io etc.) using Rails. Built integration with GitHub Marketplace, a place where GitHub users can buy plans on Semaphore CI. Created a microservice in Elixir for handling user build times and waiting times. As an extension of that microservice, created another microservice in Elixir that sends email summaries of user build times and waiting times.

  • box-metrics (Development)

    Elixir microservice that is Dockerized and it serves as a data provider for a part of the Semaphore CI. It consumes messages from RabbitMQ and stores data in its database. It exposes endpoints for fetching the stored data. It calculates waiting and build time of a particular user, project or an organization. It is very useful since it reveals insight in how much users are using Semaphore CI.

  • 18F Micropurchase (Development)
    https://github.com/18F/micropurchase

    Worked on a website for publishing and bidding job auctions. Most job auctions are about software engineering positions. Worked on a logic for publishing auctions, and showing them to the users. I did this as my first job as a freelance web developer.

  • Soggete - Banking Personal Assistant (Development)
    https://www.facebook.com/sogette/

    Built a chat bot that changes your relationship with the bank. It works through Facebook Messenger and it's a Rails application on Heroku. It's won 3rd place at the Fintech Hackathon at ICT HUB in Belgrade.

  • LetsMeet (Development)
    https://github.com/pineapple-devs/lets-meet

    Built a React Native application for the Android phones in a group of 3 people. We used latest practices in React, Redux and JavaScript. Application lets you schedule events with your friends. You invite your friends via email and they can respond whether they'll be participating. Once a friend confirms or denies, you get a push notification to your device.

  • render_async gem (Development)
    https://github.com/renderedtext/render_async

    render_async renders partials to your views asynchronously. This is done through adding JavaScript code that does AJAX request to your controller which then renders your partial into a Rails view. JavaScript code is injected at the bottom of your page and it's ran when the page loads. The JS code sends a GET request to your server in order to fetch data. Once the request is finished, response data is then rendered in the HTML at the place user specified.

    This project alleviates the need for using Single Page Application and it saves the user from writing the same Rails and JavaScript code if he wants to load something asynchronously on the page.

  • Ordinare gem (Development)
    https://github.com/nikolalsvk/ordinare

    Gem that sorts your Gemfile alphabetically. It is meant to be used inside Rails projects so the Gemfile is nice and sorted.

  • Personal Blog (Other amazing things)
    https://medium.com/@nikolalsvk

    Blog where I post technical articles.

  • Personal Website (Development)
    http://nikolalsvk.github.io/

    Small website where you can find links to my profiles on social networks and contact me via email. It's done in plain HTML and CSS.

Skills

  • Languages

    Ruby, JavaScript, Elixir
  • Frameworks

    Ruby on Rails (RoR), Redux, Jest, Jasmine
  • Tools

    RSpec, Cucumber, GitHub, Vim Text Editor
  • Paradigms

    Test-driven Development (TDD), Behavior-driven Development (BDD), Functional Programming
  • Platforms

    WordPress, MacOS, Linux
  • Libraries/APIs

    React, GitHub API
  • Storage

    PostgreSQL, AWS S3
  • Other

    Writing & Editing, Presentations, ESLint

Education

  • Master's degree in Computer Science
    2016 - 2019
    Faculty of Technical Sciences - Novi Sad, Serbia
  • Bachelor's degree with honors in Computer Science
    2012 - 2016
    Faculty of Technical Sciences - Novi Sad, Serbia
Certifications
  • Single Page Web Applications with AngularJS
    NOVEMBER 2016 - PRESENT
    Coursera Course Certificates
  • HTML, CSS, and Javascript for Web Developers
    MARCH 2016 - PRESENT
    Coursera Course Certificates
  • Ruby on Rails Web Services and Integration with MongoDB
    FEBRUARY 2016 - PRESENT
    Coursera Course Certificates
  • Rails with Active Record and Action Pack
    NOVEMBER 2015 - PRESENT
    Coursera Course Certificates
  • Ruby on Rails: An Introduction
    OCTOBER 2015 - PRESENT
    Coursera Verified Certificates
  • First Certificate in English
    JULY 2009 - PRESENT
    Cambridge International Examinations

To view more profiles

Join Toptal
I really like this profile
Share it with others