ninioJS

Hi, I'm Nikolay Ninarski (Ninio)

About me

Currently, I am the team-lead of the JavaScript team in Up2 Technology (a Dutch-Bulgarian service company, that was recently aquired by Strypes and ICT Group B.V.) Together with my team, we are developing applications (using vanilla JS, TS, React, React Native, and Angular) that use .NET, PHP, and Node.js back-ends.

For the last 5 years, we have been developing an IoT tool for data parsing and visualization.

Technologies I've had the chance to use in my work:

  • A lot of JavaScript :)
  • TypeScript
  • React, Redux, ES6
  • React Native and Expo
  • Node.js
  • IoT (LoRa, RaspberryPi, Arduino, Azure IoT)
  • WordPress
  • CI/CD using Azure DevOps (former VSTS) and PowerShell

My Work Experience:

Team Lead of the JavaScript Team at Up2Technology

Sep 2014 - Present

After spending time in Up2 as a lone HTML5 developer, we decided to create a Front-End team that could help the other teams with the construction of complex UIs.

We started off using vanilla JS with strict standards on the code quality and modularity.

Beginning of 2016, after doing research and evaluation of the possible frameworks (Angular/React/Emmet), we decided to start using React for our future project.

Technologies: React, React Native, Expo, Redux, SASS, D3, leafletJS, Node.js, express, TypeScript, PostgreSQL and Sequelize, GraphQL, Bootstrap, ChartJS, Sencha Touch, jQuery, Phonegapp/Cordova, Ace/Brace, etc.

During my time at this position I had the chance to work on:

  • A gamified exercise app for children with bladder malfunction.Home screen of the bladder application
  • A tool for producers from the developing countries, where they could monitor and subscribe for regulations from the countries they export to. The project was backed by the UN and was later handed over to WTOA globe on focus with headphones and a camera off focus
  • An iPad UI for the dutch ambulance services that notify hospital staff in the Emergency Unit about incoming patients and their conditionHealth workers putting a patient in an ambulance

CTO of Maplese B.V.

Jul 2015 - Dec 2019

Maplese is an IoT tool for data parsing, visualization, and distribution.

Created initially as a SaaS tool for visualization of data on a map, it evolved into a version focused on devices.
After several pilots and integration, we developed a new version. It was a complete rewrite, taking into account the lessons we learned.

After the update, we enabled the developers to reuse common logic during the implementation of an IoT project, instead of writing it every time. Functionalities, such as monitoring connectivity, unwrapping binary payload from common devices, data aggregation, data storage on the gateway, and sending data to a cloud are abstracted away from the system integrator.

The current version of Maplese is based on DotNet Core and can run both on Windows and Linux and both on an x86/x64 and ARM architecture (like a router on the edge of the network). The common communication interfaces used were MQTT/UDP/HTTP and MQTT over WebSockets as communication protocols.

My work involved:

  • Creating the architecture of the end-to-end solution with the help of our DotNet architects.
  • Creating the architecture for the front-end and implementing some of the UI components.
  • Writing technical documentation, targeted towards 3rd party developers.
  • Setting up the CI/CD jobs and automating the dev environment setup
Technologies: React, Redux, D3, leafletJS, MQTT over WebSockets, Node.js, ChartJS, PhoneGap/Cordova, Ace/Brace, PowerShell, Azure DevOps (former VSTS)

During my time at this position I had the chance to work on:

  • Implementing a pilot for remote monitoring of marine vesselsA support boat parked at a dock
  • Building a monitoring solution for the dutch railroad infra supervisorRailroad workers maintaining a track
  • Creating a modular dashboard UI with configurable widgetsA dashboard with different colorful widgets on it

Mobile HTML5 & WordPress Developer at Up2Technology

Apr 2011 - Sep 2014

During that time I was building HTML5 applications for a customer targeted towards iOS Safari (only major mobile browsers supporting some of the HTML5 features).

The applications were business apps developed for an enterprise app-store based on HTML5.

After the customer sold the branch that developed HTML5 apps, I started helping the WordPress team with theme development.

Technologies: HTML5, CSS3, mobiscroll, iOS Safari, WordPress

During my time at this position I had the chance to work on:

  • Application for a dutch removal company specializing in moving hospitals, laboratories, and office equipment. The app was used to calculate and book the needed resources (trucks and workers) for the removal process.Man pushing a hand truck with big cardboad boxes on it
  • UIs for a track-and-trace solution that included a web map and work/travel time slots. These were used by construction companies in Belgium to organize the salary bonuses of the employees that commuted together with their colleagues in a shared vehicle.Big commercial trucks on a dirty road
  • Application for support engineers that helps them track the tasks that need attention. It was used by one of the big airports in Europe, a construction work company, and several service companies (like fire inspectors).Airport baggage vehicles

Founder of shtrak.eu

Nov 2009 - May 2015

Together with two friends, we have founded a company with the idea to organize events and create web products.

We have helped organize one of the biggest entrepreneurship events in Bulgaria at that time - the StartUp conference, and several courses (mainly WordPress and Front-End).

As a web agency, we created mainly presentational websites and webshops using WordPress and Drupal. For some of our clients, we developed HTML and jQuery modules for existing websites.

Our clients were mainly small and medium local organizations.

Technologies: WordPress, Drupal, WooCommerce, YAK cart, jQuery, jQuery UI, jQuery Mobile

During my time at this position I had the chance to work on:

  • The website of the presidential candidate Meglena Kuneva during her campaign. She finished second but had the online campaign with the largest reach.Snapshot of the website for the presidential campaign of Meglena Kuneva
  • A Drupal-based product for facilitating networking events. Its core feature was the booking module that managed the meetings between the attendees and the available tables/rooms.People sitting at a networking event
  • Ecommerce website for an independent online bookstore. It becomes quite popular due to the big commitment of the owners towards writing extensive reviews.A bookstore

Teaching Experience

JavaScript for Beginners at Softbridge Academy

Oct 2014 - Jan 2015

Advanced C++; C# and Java for Beginners at NARS (National Academy for Software Development)

Feb 2010 - March 2011

Intro to C and C++ at Expert Micro Ltd.

Mar 2009 - Jan 2011

I've given talks on the following topics:

  • WooCommerce for beginners @ Superhosting (A Bulgarian hosting company)
  • Creating applications with WP-API @ WPUGBG (The Bulgarian WordPress user group)
  • 5 things about HTML5 @ InitLab (The hackerspace in Sofia)
  • Get responsive for 30 minutes @ WordCamp Sofia 2012

Volunteering

  • Participated as a volunteer in the StartUp Foundation and StartITSmart Student Club.
  • Facilitated WordPress workshops at Vratsa Code Week - event teaching high-school children about practical technologies

Education

Masters in Technological Entrepreneurship and Innovations @ Sofia University St. Klement Ohridski

2010 - [Dropped out 2012]

Bachelor of Informatics @ Sofia University St. Klement Ohridski

2006 - 2010

Secondary education with intensive learning of English @ Specialized Language School Joan Ekzarh, Vratsa

2001 - 2006

Images Attribution