Ivan Evgrafov

Fullstack RoR developer

XING Events GmbH, Munich, Germany

Email: ivan [at] evgrafov [dot] work
Github: dilcom
programming

Skills in Programming

Languages:

  • Ruby (Rails, Grape)
  • JavaScript (Coffee, jQuery, React+Redux), CSS (SCSS/LESS), HTML (ERB/HAML/SLIM)
  • SQL (Postgres, MySQL)

Tools:

  • SCM - git
  • Testing with RSpec, Cucumber
  • Documenting with RDoc, YARD
  • Code style and quality - Rubocop + linters (ESLint, HAMLint etc), Codeclimate + testcoverage
  • CI - Travis CI, Jenkins
  • OS - Linux (Ubuntu/RHEL/OpenSuse), macOS
Experience

Experience and employment history

July 2016 - now

Full stack Ruby on Rails developer in XING Events GmbH, Munich, Germany

Work in international team of developers and UI/UX designers to design and develop new features for Events part of XING business network. Participated in development of such features as notifications, compressed sticky header and some emails. Merged several pull requests into inner XING-wide Ruby gems. Collaborated with teams of developers dedicated to other XING parts. Made a contribution to exploration of new technologies which could improve user experience (React, Redux, Websockets).

Sep 2015 - May 2016

Backend developer in Insales JSC, Moscow, Russia/Remotely

Worked on EKAM project. Partially developed both backend (Rails, Grape, Postgres) and frontend (rails views with jQuery and pjax) parts. Joined the project on early stage and worked in close collaboration with UX, mobile (android) developers and product owner to shape the product. Successfully developed essential parts of the application:

  • Dashboard (sales statistics, bestsellers, current state of stock)
  • API for mobile POS application
  • Agile role-based authorization system Last 5 months successfully worked remotely from home.
Jun 2015 - Aug 2015

GSOC student, Remotely

Participated in Google Summer of Code with GnuplotRB project (plotting tool for Ruby users based on Gnuplot). Developed GnuplotRB gem in 3 month. Worked in close collaboration with intenational team of scientists of Sciruby organization.

Oct 2014 - Aug 2015

Junior Ruby developer (20h/w) in VIVOSS&OI JSC, Moscow, Russia

Worked on build continuous delivery system for company’s projects. Most of code written there is under NDA but there are parts in public:

  • Ruby gem that integrates OpenNebula, Chef and Sikulix in order to create, provision VMs and use them as environments for testing desktop applications via VNC
  • Tiny changes to Gitlab done to cover needs of the team
Jun 2014 - Aug 2014

Intern in VIVOSS&OI JSC, Moscow, Russia

Worked on automation of testing desktop applications with SikuliX and Cucumber. Improved SikuliX Ruby gem to use most modern SikuliX features such as VNC support for remote testing. Shortened the release cycle by reducing time and working hours spent on regression testing of software.

Jul 2013

Intern in Network department of Croc, Moscow, Russia

Education

Educational background

I studied in Bauman Moscow State Technical University and have got bachelor’s degree in Computer Systems and Networks in 2015.

I took following courses among others during sudy:

  • Higher mathematics courses such as Discrete mathematics, Automata theory, Linear algebra, Mathematical logic and so on.
  • Programming basics (Pascal).
  • Object-oriented programming (C++).
  • Web programming (Ruby + RoR, CSS, JavaScript).
  • Algorithms and data structures (Standford course on Coursera).

I also used Ruby and C++ in several non-study project during this time:

  • Plagiarism detection tool consisting of SOAP service written on C++ and frontend (modified Moodle crot plugin and standalone Rails app).
  • Participating in development of Sikulix gem for Ruby and some research in using it together with RSpec and Cucumber in order to test UI of desktop applications. This article is based on that research.
  • Graduation project that related to building Continuous Deployment system based on Open Source products.
other
Languages
  • Russian - native
  • English - fluent
Personal skills
  • Honesty
  • Team player
  • Responsibility