Личный сайт Алексея Григорьева


Alexey Grigorev

Actual version of CV is here: http://alexeygrigorev.com/cv

(Download pdf version of the CV)

- +49 177 490 5706, alexey.s.grigoriev [@] gmail.com
- linkedin: http://www.linkedin.com/in/agrigorev
- github: https://github.com/alexeygrigorev
- stackoverflow careers: https://careers.stackoverflow.com/alexey-grigorev-125298


A data scientist with strong technical skills in software engineering backed by five years of professional experience. The experience includes all aspects of development: initial use case analysis, front-end and server-side development and delivering ready-to-use applications.

Currently I focus primarily on Data Analysis, Data Mining and Machine Learning.


Programming Languages / Technologies:
Java, Scala; R, Python (PyData stack)

Large-Scale Data Processing:
Apache Flink, Apache Spark

Data Mining, Machine Learning; Probability and Statistics; Linear Algebra

Java related skills:
Java core, Spring, JUnit, Maven

English: Advanced (IELTS 8.0)


04.2015 — 09.2015
DIMA Group at TU Berlin
Position: Software developer / Student research assistant

Project details:
Implementing Apache Mahout DSL for distributed Linear Algebra on top of Apache Flink.

Scala, Java; Apache Mahout, Apache Flink, Apache Spark; maven, git


08.2013 — 12.2014
Small Software Factory
Position: Machine Learning developer

Project details:
A series of small projects in the following areas:
voice recognition, text processing, cluster analysis and other areas.

- Data preparation and analysis
- Designing proof of concepts

Java, JavaML, libSVM, Encog, Weka, CMU Sphinx; Lucene, Stanford NLP; R; MS Excel.


06.2012 — 10.2013
Luxoft, a project for UBS
Position: Software Developer

Project details:
A set of intermediate systems for gathering data (orders, executions, cleared trades, allocation instructions and bookings) from different markets and linking them together to form a complete picture of trading activity.

- implementing new features and proofs of concepts;
- refactoring existent code;
- writing and running tests (all set of tests, from unit tests to regression);
- conducting technical interviews;

Java, Spring; Groovy; Spring Integration; Maven, svn; JUnit, Mockito, PowerMock.

Improved matching statistics, which resulted in more accurate commission calculation. Created a groovy-based DSL for managing mapping rules.


08.2011 — 05.2012
Position: Software Developer (Java/Spring)

Project details:
Tele2 Gudok: a web-oriented e-commerce system for selling ringback tones (tones which are heard when calling to a mobile phone).

- developing front-end application;
- implementing new features;
- refactoring existent code;
- managing 1 developer;

Java, Spring, Spring MVC, Tiles; Java Script, jQuery; Maven, svn; JUnit, Mockito, jsTestDriver.

Developed the application architecture from scratch, delivered the first version of the application in a month and successfully launched it. Afterwards kept the code clean and concise, paid special attention to the test coverage. Kept the level of the coverage at 95%.

06.2011 – 06.2012
JTalks.org (open source project)
Position: Team Lead (Java/Spring)

Project details:
Multicomponent platform for forums, blogs, webinars for Russian-speaking Java community javatalks.ru

- managing a distributed team of 3-6 developers;
- advising team members upon code quality;
- mentoring;
- recruiting;
- reviewing the code;
- refactoring the code;

Java, Maven, Git, Spring, Hibernate, ZK framework, Sonar, Fisheye, and more.

Made sure the code kept in a neat condition and carefully watched the test coverage. Paid special attention to mentoring and as the result at least 3 participants were able to find a job after taking part in the project because of the skills they gained.

03.2011 – 08.2011
SimSim, Nizhniy Novgorod
Position: Software Developer (Python/Django)

Project details:
Web-oriented dispatching system for maintaining technical environment of a series of industrial facilities such as factories. This includes all aspects of maintaining — from annual/periodic inspections to urgent requests of repairing.

- developing architecture of the application;
- interacting with the customer;
- adding new features as a need of them arises;
- supporting the application;
- maintaining Apache2 web server on Linux Gentoo.

Python, Django, MySQL, South, jQuery, SVN, Linux Gentoo, Apache2, mod_wsgi

Adopted agile methodology for a freelance project, and, interacting with the customer on weekly basis, developed the whole architecture from scratch. Successfully developed and delivered the application.

12.2010 – 08.2011
Auriga Inc., a project for Kiva Systems, Nizhniy Novgorod
Position: Java Developer

Project details:
Robotized order fulfillment system for e-commerce warehouses

- implementing new features;
- maintenance (refactoring, bug fixing);

Java SE, Spring, RMI & Spring Remoting, Swing, jUnit, MySQL, Maven, AccuRev

Learned the Java programming language and surrounding technologies. Partly rewrote a tool for persisting the current state of the system: separated highly coupled parts, enhanced it by making it work remotely, while adhering to the existent application structure.

06.2010 – 09.2010
Boston University, Cognitive Neuroscience Laboratory, Boston, USA
Position: Programmer (Experiment Design and Data Analysis)

Project details:
Full development of series of computerized experiments: design, data collection, and analysis. All the experiments were based on scientific researches made by the laboratory. Each experiment was designed with regard to a particular psychological aberration.

- developing programs in E-Studio environment;
- creating and maintaining databases in MySQL;
- data processing in MS Excel (macros in VBA);
- participating in researching on human perception.

E-Prime 2.0 – a tool to fulfill all of computerized experiment needs;
E-Basic; MySQL, VBA for Microsoft Excel.

Seven different experiments were made from scratch, grown up from small experiments to a series of programs which were perfected due to constant cycle of testing on real subjects. Those programs were successfully used and the results were applied to further researches.

01.2010 – 05.2010
Sterh Ltd., Birobidzhan, Russia
Position: Programmer (C#)

Project details:
Developing an information system for automatizing the commodity circulation process of Sters, Ltd.

- gathering and analyzing requirements;
- designing the architecture;
- implementing the use cases;

C#, .net 3.0, Visual Studio 2008, Microsoft Report, Firebird, Flame Robin; SVN; Rational Rose, ERwin Data Modeler (ERWin), ERwin Process Modeler (BPWin).

The commodity circulation program was successfully adopted by Sterh, Ltd. in May 2010. The time that the business-manager spent for processing incoming orders and the time that sellers spent for service was decreased by 25%. Wrote my graduation thesis on the results of the work.

11.2007 – 12.2008
Far Eastern State Academy, Laboratory of Mathematical Simulations, Birobidzhan, Russia
Position: Programmer (MATLAB, Fortran and Delphi)


Project details:
Participating in a scientific project for forecasting the direction of typhoons using images from satellites.

- image-processing in Delphi and MATLAB (cluster analysis, etc);
- statistical analysis of time series in Fortran (F95);

Created a DLL with cluster analysis procedures, wrote a course work on cluster analysis.


2013 — 2015
IT4BI Master Program
Joint Master program by Université libre de Bruxelles, Université François-Rabelais de Tours and Technische Universität Berlin.
Specialization: Distributed and Large-Scale Business Intelligence at TU Berlin, DIMA group.
Degree work: «Identifier namespaces in mathematical notation»

2006 – 2010
Far Eastern State Academy
Department: Faculty of Mathematics, Information Technologies and Engineering
Specialization: Information Systems and Technologies
Degree work: «Commodity Circulation Process in Sterh Ltd.»

2006 – 2011
Far Eastern State Academy
Department: Foreign Languages
Specialization: English

Independent Coursework

coursera, edX and other courses
- Basics of Business Intelligence, Luxoft (2012)
- Informatica level 1 and 2 trainings, Luxoft (2012)
- Computing for Data Analysis, coursera (2013)
- Game Theory, coursera (2013)
- Data Analysis, coursera (2013)
- Algorithms: Design and Analysis, Part 1, coursera (2013)
- Web Intelligence and Big Data, coursera (2013)
- Functional Programming Principles in Scala, coursera (2013)
- Statistics: Making Sense of Data, coursera (2013)
- Machine Learning, coursera (2013)
- Introduction to Data Science, coursera (2013)
- Cryptography I, coursera (2013)
- Discrete Optimization, coursera (2013)
- Coding the Matrix: Linear Algebra through Computer Science Applications, coursera (2014)
- Learning from Data, edX (2014)
- Statistical Learning, Stanford Lagunita (2015)
- Introduction to Linear Models and Matrix Algebra, edX (2015)
- Linear Algebra — Foundations to Frontiers, edX (2015)
- The Analytics Edge, edX (2015)