Hi there!
I’m Niki, Software Engineer with a vast open-source portfolio and strong UI/UX background.
I do consulting work on all matters Clojure/Script: JVM, web, backend, Datomic, performance, custom OSS modifications, etc.
- Expertise
- 19 years of distributed systems, highly interactive web apps (full stack), UX/UI design, Clojure/Script, Erlang, Python, Kotlin, Java
- Github
- github.com/tonsky
- Contact me
- niki@tonsky.me or @nikitonsky
- Location
- Berlin, Germany (GMT+01:00)
What I worked on (chronological order)
AlleKinos.de
No-nonsense movie showtimes site for every cinema in Germany
- Role
- Creator
- Period
- May 2024
- Status
- Launched
- Stack
- Clojure, DataScript
clj-reload100+
Clojure library for dependency-aware code reloading during REPL sessions
- Role
- Creator
- Period
- Jan 2024 — Feb 2024
- Status
- Launched
- Stack
- Clojure
Humble UI1.2K+
Clojure UI framework for cross-platform desktop apps
- Role
- Creator
- Period
- Oct 2021 — now
- Status
- Ongoing
- Stack
- Clojure
Clojure Sublimed1.9K+
#1 Clojure development environment (syntax, indentener, REPL) for Sublime Text 4
- Role
- Creator
- Period
- Dec 2021 — now
- Status
- Launched
- Stack
- Python
This is an exceptionally well thought out set of points on REPL use for a lang like Clojure.
— rajandatta on Hacker News
Some features I wish existed on CIDER, since I’m more used to Emacs. Nice job!
Roam Research
Optimized DataScript persistence to reduce graph loading times down to several times
- Role
- Consultant
- Period
- May 2021 — July 2023
- Stack
- ClojureScript, DataScript
JWM500+
Cross-platform window management and OS integration library for Java.
- Role
- Creator
- Period
- May 2021 — now
- Status
- Ongoing
- Stack
- Java, C++, ObjectiveC
Skija400+
High-quality JVM bindings for Skia graphics library.
- Role
- Principal Engineer
- Period
- March 2020 — now
- Customer
- JetBrains GmbH
- Status
- Ongoing
- Stack
- Java, C++, OpenGL, Metal, DirectX
- Used by
- Humble UI, JetBrains Fleet, Jetpack Compose Desktop
I'm continually impressed by the stuff that comes out of the Clojure community. They really seem to punch above their weight in terms of useful output, novel ideas, interesting projects/products.
— uDontKnowMe on Hacker News
Noria
Experimental high-performance, declarative desktop UI framework for the JVM.
- Roles
- Software Engineer, UX consultant
- Period
- May 2019 — March 2020
- Customer
- JetBrains GmbH
- Status
- Closed alpha
- Stack
- Clojure, Kotlin, Rust, WebRender
Fibery
First work management platform with truly flexible domain.
- Role
- Developer
- Period
- April — June 2018
- Customer
- Targetprocess Ltd
- Status
- Closed beta
- Stack
- Clojure, core.async, PostgreSQL
[Nikita has] good development speed. Quickly got the hang of things. Great quality of code and solutions. Reliable, can delegate any task and be sure it’ll be done.
— Michael Dubakov, founder
Grumpy Website32K+/mo
Collective blog with an in-depth look into UI/UX and design pitfalls of modern day interfaces. Tech: from-the-scratch blog engine developed live on YouTube in mere 36 hours.
- Roles
- Developer, Co-Author
- Period
- September 2017 — now
- Status
- In production, actively used
- Stack
- Clojure/Script, Rum/React
If you are into product and design, you should check out grumpy.website. It has a lot of constructive feedback for y'all designers. (Think LittleBigDetails.com with a Slavic spin 😓)
— Notion, the all-in-one workspace
Collaborative document editor
In-browser, real-time, collaborative WYSIWYG editor for complex domain-specific documents.
- Roles
- UI/UX designer, Architect, Lead developer
- Team
- 3 Clojure Engineers
- Period
- September 2017 — April 2018
- Customer
- Cognician, Inc
- Status
- Ongoing. Completed: UI, architecture, functional prototype
- Stack
- Clojure/Script, Datomic, DataScript, Rum/React, custom Datomic-DataScript sync layer
Nikita's productivity is phenomenal (he built a substantial portion of @cognician with us for a while). This'll be dollars well-spent!
— Robert Stuttaford, CTO, Cognician
Coaching platform
Next generation of an in-browser (including mobile) self-serve coaching platform, developed from ground up in place of a legacy system.
- Roles
- Architect, Lead developer, Product manager
- Period
- March 2015 — August 2015
- Customer
- Cognician, Inc
- Status
- In production, actively used. Fully replaced legacy system, ongoing feature development and maintenance
- Stack
- Clojure/Script, Datomic, DataScript, Rum/React, custom Event Sourcing implementation, custom client-server sync layer
[Nikita] single-handedly built crucial parts of our system, with great efficiency and level-headedness [...] I can't recommend Nikita highly enough. If you can find a way to work with him, do!
— Robert Stuttaford, CTO, Cognician
AnyBar5K+
General-purpose macOS menubar status indicator.
- Role
- Creator
- Period
- March 2015 — August 2016
- Status
- Stable
Rum1.8K+
Simple, decomplected, isomorphic HTML UI library for ClojureScript (based on React) and Clojure (custom Server-Side Rendering implementation).
- Role
- Creator
- Period
- December 2014 — now
- Status
- Stable. Ongoing feature development and maintenance
- Used by
- Cognician, Attendify, PartsBox.io, modnaKasta, ChildrensHeartSurgery.info, Mighty Hype, БезопасныеДороги.рф, TourneyBot, PurposeFly, Simply, Oscaro.com
Fira Code75K+
The most popular programming font with ligatures.
- Role
- Creator
- Period
- November 2014 — now
- Status
- Stable. Widely used, ongoing improvements
- Used by
- JetBrains, CodePen, Blink Shell, Klipse, IlyaBirman.net, EvilMartians.com, Web Maker
DataScript5K+
Highly-flexible persistent in-memory storage and Datalog query engine for Clojure/Script and JS.
- Role
- Creator
- Period
- April 2014 — now
- Status
- Stable. Ongoing feature development and maintenance
- Used by
- Roam Research, LogSeq, Athens Research, Hulunote, Grumpy Website, Precursor, LightMesh, Cognician, bitfountain, PartsBox, I am Fy, Zetawar, Lemmings
DataScript is a brilliant thing...undoubtedly the most widely deployed Datalog engine on the planet 🔥
— Jeremy Taylor on Twitter
ClojureCourse.by
Online videos teaching Clojure language + homework + 200+ students in remote groups.
- Roles
- Developer, teacher
- Team
- 8 people
- Period
- April — May 2014
- Status
- Completed
MZ Bench
Distributed benchmarking/load-testing tool with cross-machine coordination and DSL scripting.
- Roles
- Lead developer, Project manager, Team leader
- Team
- 4 Erlang Engineers
- Period
- February 2014 — November 2014
- Customer
- MachineZone, Inc
- Status
- Prototype
- Stack
- Erlang
Echo DataServer
High-load real-time monitor/data crawler & processing pipeline for Twitter, Facebook, Youtube and others.
- Roles
- Lead developer, Team leader, Product manager
- Team
- 8 Clojure Engineers
- Period
- October 2011 — February 2014
- Customer
- Echo
- Status
- Active production use at the moment
- Stack
- Clojure, RabbitMQ, Redis
[Nikita] is well-versed in technology and can build scalable, reliable and high-performance systems from scratch. He can work directly with a product team to flesh out requirements and define deliverables.
— Vlad Skvortsov, VP of Engineering, Echo
[Nikita] has personally hired and managed people and his team has created one of the most important products for the company in record time and with appreciable quality.
— Lev Walkin, Founder and CTO, Echo
Nikita has the ability to take team and project initiatives aligned with the business direction of the company. Nikita has strong communication skills, both to present his ideas and research and to listen and understand the organization around him and his team.
— Philippe Cailloux, COO & VP of Product, Echo
Spectre Web framework
Web framework built from the grounds up, inspired by Django, with web sockets, for Fantom language.
- Roles
- Designer, Lead Developer
- Period
- October 2010 — October 2011
- Customer
- Xored Software, Inc
- Status
- Feature complete
Various Java projects
Automation, billing, prototyping for big Russian industrial facilities.
- Roles
- Senior Java Developer, Java Developer, Team Leader
- Period
- August 2005 — October 2010
- Customer
- Sibirenergo-Billing, MSS-Systems, KB Inform
Education
Master’s degree in Information Technology at Novosibirsk State University.
- Role
- Student
- Period
- 2001 — 2007
- Status
- Complete