15
Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume print version of this portfolio (6M, 15 pages) Front-end — TypeScript — HTML5 Canvas — React.js — HTML5 & CSS3 — d3.js — jQuery — Ramda.js — Mobile-friendly — WebGL, Three.js Python — advanced matplotlib — pandas — cairo — numpy — Jupyter internals — Tornado — Sphinx (documentation) — scikit-learn — Selenium web driver — web scraping — Google App Engine — SQLite Other — Emacs — Arch Linux — LaTeX — Bash — SSH — Gephi — Processing.org — QGIS Office communications analysis July – August 2017 Source of web apps — The project has been completed during internship atHabidatum . — I've made a lot of data analysis, static and interactive visualizations. — The data includes private and public messages, commits and issues.

Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Yaroslav Sergienkointeractive animation • data visualization • full-stack • data analysis

resume • print version of this portfolio (6M, 15 pages)

Front-end

— TypeScript

— HTML5 Canvas

— React.js

— HTML5 & CSS3

— d3.js

— jQuery

— Ramda.js

— Mobile-friendly

— WebGL, Three.js

Python

— advanced matplotlib

— pandas

— cairo

— numpy

— Jupyter internals

— Tornado

— Sphinx (documentation)

— scikit-learn

— Selenium web driver

— web scraping

— Google App Engine

— SQLite

Other

— Emacs

— Arch Linux

— LaTeX

— Bash

— SSH

— Gephi

— Processing.org

— QGIS

Office communications analysis July – August 2017 Source of web apps

— The project has been completedduring internship at Habidatum.

— I've made a lot of data analysis,static and interactive visualizations.

— The data includes private andpublic messages, commits andissues.

Page 2: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Heat maps of soccer players January 2017 Source on github •full resolution

— Small javascript library for heatmapcreation in canvas.

— Written during internship at InStatfootball.

— Supports fast Gaussian blur as wellas a convolution with arbitrarykernel

— Visualizes set of points as well aspaths

— Internal buffer uses doubleprecision numbers (for comparison,heatmap.js uses 8-bit alpha buffer)

— Supports combination of multipleheatmaps

Page 3: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

D3 visualizations of 2015—16Premier League January 2017 live version

Page 4: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Interactive sphere March 2017 live version

rLoop holding page September 2017 live version

— The page gradually transforms to mobile version.

Page 5: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Penguin to ostrich transform September 2017 live version

— Original: species-in-pieces.com.

Blurred particles animation September 2017

— The picture was procedurally generated on html5 canvas.

Falling cherries animation April 2017 live version

Page 6: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Social network group chatanalysis tool November 2016 online • github

Page 7: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Jupyter extensions August 2016 example notebooks

— Group chat analysis tool has beencompletely written in Jupyter usingthese extensions

— Converts notebook into a series ofsource files after each save.

— Each cell has a type and anynumber of labels.

— "Hot reloading" of tornado handlers,using the same IOLoop as Jupyter.

— Dynamic compilation of JSXsyntax.

— RequireJS libraries management.

— CSS file import and prefixing.

News titles generator October 2015 live version •parser source

— The idea is to combine thebeginning of one title with theending of another.

— App stores data about validsequences of grammatical labels.

— 600 000 news articles have beenparsed by a custom parser.

Page 8: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Interactive NY subway map December 2014

— The map was made for theTUNEL.us project.

— Fully procedurally generated, noraster or vector files. This approachsignificantly reduces network usageand makes the map fullycustomizable.

— Starting with Chris Whong'sWhashington-like styled map all thekeypoints such as stations, bendsand park corners were manuallyadded.

— A seperate subsystem has beenmade for managing marks, addingconstraints and enhancing stationscenters using simple imageprocessing algorithm.

— System support constraints suchas "angle between theese pointsmust be 45°", "theese two linesmust be parallel, and a distancemust be equal to the line widthmultiplied by 1.2".

— This enabled lines to be thinner,animations to be added, providedcustom station design, andenhanced the speed and size of themap.

Page 9: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

The TUNEL.us website April 2015

— The website is now completelyfunctional, but it hasn't beenlaunched "officially".

— No CSS frameworks have beenused.

— Mobile-friendly.

Page 10: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Stickers shop March 2015 website

— This website was made for theanniversary of the computerscience department of myuniversity.

— There was a limited number ofstickers and users were able tobook stickers and to view actions ofother users "in real time".

— Simple algorithm has been used toarrange stickers efficiently forprinting (not in the way they werearranged on the website).

Information retrieval system forcontractor checking November 2016 – April

2017

— Contains multiple web-parsers anda system for managing them.

— For each company report containits metrics, metrics distributionamong all companies andprobability that company will closewithin next 2 years.

Page 11: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Yandex.Market parsers July 2015

— A set of utilities to extract online petfood shop offers, and to matchoffers with other offers for thesame product.

— The problem was there were a lotof variations in the how the sameproduct was named, and often thetitle was incomplete.

— The solution was to manuallycreate a decision tree and to try todeduce missing characteristics ofan offer, if possible.

Page 12: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Geometry problems semantictree builder July 2016

Russian passport numbercorrectness checker December 2016 live version

— It was challenging to reverse-engineer the way Russian passports are assignedto numbers using indirect data such as numbers of stolen or expired passports.

Page 13: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Tool for visualization of crowdsourcing suggestions December 2014

"Killer" social game November 2014

— Moderators were able to control phases of a game, send messages to users,add points, award badges and so on.

Page 14: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

Archive of lectures notes andforum February 2015 link

— The website has been written fromscratch using the Google AppEngine.

— Several groups of users

— Custom latex-like syntax

— Content is editable by any user

— Able to rollback to the previousversion

Page 15: Yaroslav Sergienko - pallada-92.github.io · Yaroslav Sergienko interactive animation • data visualization • full-stack • data analysis resume • print version of this portfolio

How old are Moscow buildings?(static map) November 2016 high resolution

— QGIS learning project.

Graph of bioinformaticsscientists collaboration in Russia December 2015 full resolution

— Static image, my test project in Gephi