Ivan Nikolic [lesh] Curiculum Vitae

email ivan@fea.st
libera or oftc IRC networks as lesh
github homepage

High Level Skills Overview

My knowledge of computer systems is broad and deep. I managed dev teams in biggest hosting companies in the world, worked in modern web startups, have founded a few businesses of my own and have built robots and machines for artists

I like high level languages, designing large systems, computer security and machines.

I have many personal projects ranging from evolutionary programming, frameworks for distributed systems, robotics libraries, intrusion detection systems, computer vision, etc. This one time I made a custom computer powered by thousands of lemons that generates poetry.

Languages

JS (TS/Coffee/Es6), Python, Ruby, Lua, C, Scala, Scheme, ReasonML (I brushed upon a bunch more, I’ll learn a new language when I need it. Not a big fan of php or java and probably won’t work with them)

Full Stack Modern Web (10+ Years)

I leaned towards node, but I worked with most major web frameworks in popular languages at some point. Standard things like html5 and es6 stuff, websockets, modern web security, etc, common libs and APIs (react, redux, css/js precompilers, real time data syncing, stuff like that)

I wrote bleeding edge web frameworks and libraries of my own and based startups on them.

General Architecture, Devops etc

15+ years of linux experience

I implemented full infrastructures for diverse companies of varying sizes and goals.

I’m familiar with things like distributed systems, automatic testing, orchestration (nixops, kuberentes, ansible, salt, docker, all the major tools in this space), monitoring, data collection, logging, graphing, scaling, backups, error recovery, clustering, in-house KVM cloud implemnetations, 0 downtime upgrades/downgrades, etc.

Security

Modern web security, malware, networks, protocols, operating systems, log collection, incident response and forensics, IDS (influxdb, ossec and such)

Knowledge of internals of different protocols, I can talk major plaintext protocols by hand with nc

Electronics, Mechatronics, Robotics, Random

I’ve built custom drones and robots, electric skateboards alarm systems, experimental electronic music festivals, have maintained radar systems on ships, built custom distributed sensor networks, random art projects, etc

Random

Some opengl, computer vision, cryptocurrency etc

I have no problem in learning a new programming language or a technology, and do so often.

I am generally aware of the state of computer security in the world, regularly attending or following major conferences like CCC

Brief Recent Employment History

this job/project list can be much more verbose, and I omitted the ones I don’t consider particularly important. I also didn’t write about tech parts of art projects much because I think that you probably don’t care about those, for more info on this you can check out my artcv.


Lenus.io - Internal Consultant/Lead [2021-2023]

lenus.jpg Working across teams to implement complex projects in the 400 employee company, some examples:

  • Splitting the monolitic backend and infrastructure into a multi regional distributed system while respecting local privacy laws. Almost all teams and departments in the company were involved
  • Company wide secrets management for individual users, teams, services and servers across different deployment mechanisms
  • Implementing incident response processes and workflows
  • Managing transition of tech, data and processes for acquired companies
  • Supervision and direction for different technical departments like SRE, Backend, Data, etc

technologies: typescript/node, heroku, sentry, datadog, postgres, aws

Lenus.io - Lead Data Engineer [2019-2021]

lenus.jpg Founded and led the technical end of data department

  • Built a full data processing infrastructure serving all departments on top of kubernetes. This involved data collection, processing, visualization and storage
  • Implementing workflow and process changes with regards to how departments use data.

technologies: typescript/node, kubernetes, grafana, influxdb, postgres, aws, google cloud, tableau

Creative.ai - Early employee, Senior developer [2017]

creativeai.jpg ML for augmented creativity, focusing on graphic and web design

Automatic layouting and design, recursive generative language research, deep neural networks

  • Wrote an extensible generative language for layouting and images
  • Implemented an initial infrastructure for the company
  • Different deep learning experiments with regards to video processing, image generation etc

technologies: python, node, tensorflow, react. postgres

Yentown.ltd - Founder [2017-2019]

yentown.png Crypto Algo trading

  • Sub-second resolution real-time view of multiple cryptocurrency markets
  • An exact simulation of trades taking into account different price changes at different market depths
  • Implemented machine learning systems for trade predictions and simulations

technologies: node, postgres, ansible

Bitcoinlab.org - Founder/CTO [2011-2018]

bitcoinlab.png This one started as a small experiment a few years back and ended up as a company with a few occasional employees and as my main source of income. Among other things as a part of this I created BattleCoin.org a distributed game engine.

Developed the full stack in house since these things were new and js immature, including realtime syncing object system, event subscribers, JSON validators, web/networking/game/graphics engines.

technologies: node, real time distributed object syncing, mongodb

Wave International - Coounder/CTO [2013-2020]

waveme.png An adventure tourism agency currently focusing on Korean tourists in the Philippines, did the online side of the job, with occasional on the field stuff to create content for the site, explore for new tours, etc. Our profits are doubling each year! I exited the company in 2020

technologies: node, express, mongodb

Resbou Cofounder/CTO [2016-2017]

resbou.jpg Startup revolving around property management with a fairly techy infrastructure aspirations. Y-combinator shortlisted.

  • Wrote from scratch a fully distributed self scaling clustered backend with 0 downtime upgrades and no single point of failure.
  • Distributed task execution system.Tasks able to migrate mid execution to other machines in case of scaling or crashes.
  • Made an easy library for new task creation and testing so contractors can write tasks

technologies: node, express, react, postgres, etcd

TopHat - Senior Developer [2012-2014]

tophat.png Startup working in the Education Space on software for real time interactions between professors and students (quizzes, games etc)

  • Implemented a testing framework using pluggable browser systems (puppet, selenium, chromedriver etc) for an education software startup
  • Developed HTML5 distributed multiplayer game engine and various internal services
  • General devops and SRE stuff

technologies: python, django, js

Tradehill - Early employee/Senior Developer [2011]

tradehill.jpg A second largest bitcoin exchange at the time. Worked with a small team on early prototypes and aditional funding.

  • A mobile payment system that uses html5 geolocation to find merchants/users nearby.
  • New realtime object syncing backend prototype.

technologies: python, backbone

Reflected LTD [2010-2011] - Lead Developer

reflected.png Managed hosting company, hosting some of the highest bandwidth sites on the internet, operating with thousands of servers across the world.

I’ve lead data collection, graphing, alerting and auto scaling work as well as ansible type automation systems, all this was written in-house since systems like these didn’t exist at the time.

  • live traffic data collection and visualization from mutliple content delivery networks,
  • js graphing engine with zoom/pan and dynamic graph resolutions, simultaneous display of multiple datasources etc.
  • RPC above zeromq for automating things like firewall opening upon sso signons, server data collection, sysadmin tasks. Experimented with RPC method evaluation and automatic GUI generation

technologies: python, perl, django, postgres, zeromq, rrd

Bannana Poetry

with Ines Krasic, prodean at croatian art academy. my part was a crawler that does markov chain analysis of a text, searches for rimes, and attempts to write poetry. the whole thing is running on a microcontroller with an eink display, powered only by fruit. that was difficult :) check out a photo

exibited in gallery Galzenica in Croatia, Blasthaus gallery in San Francisco, and National museum of China on Translife 2011

Sound Table

for Iva Curic, artist from croatian art academy a sound generating table with magnetic sensors (see video). My part was a software with realtime opengl representation of a system and realtime sound generation, all electronics and programming of atmel microcontroller. the whole table is a bluetooth device sound-generating computer connects with. short youtube video

Personal Info

45217945715_e08e251ed1_o.jpg

I started playing with electronics and programming when I was a child In the last 15 years I’ve lived in Toronto, Seoul and Cebu, Philippines and I’m currently based in Athens, Greece

When home in Croatia, I’m often hanging out in a hacklab in mama, we have space in the center of Zagreb where we organize lectures, workshops, or just sit around (official site) I found some extremely talented people there.

Technology is a passion so I work on these things in my spare time and have a lot of personal projects.

I’m sometimes working on technical parts of new media arts and I’m frequently collaborating with Croatian Academy of Arts. Those works mostly involve programming and robotics. I listed just a few as I suppose you don’t care about those as much.

Personal Projects

This is a large list and I will write about a small part to paint a general picture.

[I’m sorry I don’t link and describe each one in detail, but I’ll be happy to talk about it and look it up, maybe look at my blog, which also needs to be updated :)]

CTM hacklab fellow

I developed some projects related to generative sound and visuals, started a micro band and performed on the “CTM festival for adventurous music and art” last year (2020)

Cryptocurrency Related Projects

I’ve been with crypto since the start, working with others and on solo projects. I have around 100 (just counted them) repositories of crypto related projects.

I did some automated trading, some micro services, some larger projects like tradehill or battlecoin.org.

Crypto services are a good way to validate your security practices, since all of them are inedvertantly and by nessesity running a solid bug bounty.

A lot of node libraries

I built these usually quickly and out of necessity, they were usually more sophisticated then popular state of the art projects at the time. These days javascript community cought up a good number of them

backbone4000

advanced object model based on backbone, simpler obvious fixes original backbone caught up on eventually

abstractman

Building different types of graphs, state machines etc. Used to impose some structure on logic of complex systems.

json validator/modifier

A fairly small project, but I like the API. It’s older and a few orders of magnitude faster and more feature rich then most popular projects that have a simmilar functionality.

nodejs-subscriptionman2

event and message matching built on top of the json validator

logger3

flexible logger with hierarchical sub-loggers and pluggable outputs.

logs in general should be tree like structures and not lists, and we need a specialized database that doesn’t exist for this kind of data, log levels and grepping are bad way to filter messages.

This project allowes me to reconstruct a full session of a particular user only within some particular context (interaction with another user for example) or view it in real time.

lweb3

I use this to build complex protocols and systems quickly.

Its an abstract communication framework with pluggable transport protocols as well as communication protocols that can depend on each other.

For example. Event subscription protocol needs a query/reply mechanism. HTML tranport offers this out of the box, but TCP transport automatically includes this subprotocol if I need subscriptions on top of TCP.

Channels and broadcasts are then implemented on top of the subscription protocol.

2D-game-engine

Its a network game engine with opengl and svg renderers.

I treat all games as complex cellular automata. On top of it, a full multiplayer bomberman game with sound and textures is about 200 lines of code both server and client.

Some Easy Computer Vision Stuff

dual camera 3d location reconstruction, movement detection, people detection etc, mostly using opencv, mostly used in random art projects and fun things like measuring how much people dance for a DJ competition, how fidgety I’m sleeping, robot collision avoidance and SLAM, weird user interfaces, etc.

Evolutionary “Solution” Searcher For Iterated Prisoners Dilemma

wikipedia on prisoners dilemma, screenshot

General Framework For Genetic Programming

and a simple initial RAM-machine like computer language for evolving and initial problem, evolution of cellular automatas, ended up as an awful musical instrument among other things screenshot 1, screenshot 2

Framework For Simulation Of Multiagent Systems

for evolution experiments and its first usage as simulation of a world of an ant and attempt to evolve its strategy, (agents can lay scent, look around, and pick up things) screenshot

Physics Simulation Used To Evolve Walking Bodies

Almost a standard machine learning test these days I guess, I needed this in order to evolve solutions to problems related to real world robot bodies as well as experiment with the body design itself screenshot

My Own Genetic Programming Languages With Strict Type System

designed after reading about a few academic evolutionary programming languages (push) this is a work in progress.

Formal Education

I’ve never graduated, didn’t like the studies available in Croatia and I ended up working too soon.

Faculty of Engineering of Zagreb, Computer Engineering, 2 years

University of Zagreb Faculty of Science, Department of Mathematics, 3 years

Author: lesh

Created: 2023-07-12 Wed 01:25