Ivan Ruchkin

E-mail: [email protected] Phone: +7-(916)-345-17-89

Objective Software Engineering Position

Summary  Software developer with more than two years of industrial programming, wide knowledge and ambitions in software engineering.  User interface designer with knowledge of human-computer interaction theory, usability, goal- and user-oriented interface design. Has extensive GUI creating experience.  Mathematician with focus in applied mathematics, using various techniques to solve problems of formalization and optimization.

Education 2006 – now M.V. Lomonosov Moscow State University (MSU), Faculty of Computational Mathematics and Cybernetics (CMC), Computing Systems Lab. Moscow, Russia. Speciality: Applied Mathematics and Computer Science. Concentration: System Software. GPA: 4,9 out of 5,0. 5th (final) year Specialist (equivalent to Masters) student.

1996 – 2005 High School #1273 specialized in English language. Moscow, Russia. Score: 5,0 out of 5,0. Gold medal «For Outstanding Study Achievements».

Professional Experience 04.2010 – now Si-Trans Ltd. – an international transport and logistics holding company. Moscow, Russia. Position: software developer, user interface designer (part-time). Responsibilities:  Existing ERP system support and development (C++ Builder, T-SQL)  New ERP system development (C++ & Qt, T-SQL)  Database design (Microsoft SQL Server 2000)  Graphical user interface (GUI) design  Business process analysis, requirements engineering Accomplishments:  Active participation in sensible development practices introduction: version control, issue tracking, coding conventions  User interaction improvement in existing ERP system  Existing code optimization  Document management system development 05.2010 – 08.2010 Google Inc., Thousand Parsec Community developing a platform for games. Position: developer, Google Summer Of Code participant. Responsibilities:  Development of cross-platform Thousand Parsec client (Python, wxWidgets)  Improvement of existing code  User interaction improvement Accomplishments:  Development of Thousand Parsec client (several modules)  Successful fulfillment of Google Summer Of Code program

09.2008 – 05.2010 Computing Systems Lab, CMC MSU, Moscow, Russia. Position: software developer, user interface programmer, analyst at an R&D project (part-time). Responsibilities:  System-level software engineering (C/C++ & WinApi, Ruby)  User interface design (GUI Design Studio)  User interface implementation (C & WinApi, RubyQt)  Malware security threats analysis, survivability analysis  Technical documentation writing Accomplishments:  System-level library development  Two GUIs implementation  and configuration system part implementation  Successfully finished the project

Associated Experience 09.2008 – now Courseworks and diploma on «Single-Window Integrated Development Environment» topic. Activities:  Detailed review of integrated development environment (IDE) interfaces  IDE interface design according to usability theory  Single-window interface implementation based on KDevelop (С++ & Qt & KDE)

05.2010 – now Thousand Parsec community, engaged in open Thousand Parsec gaming platform. Activities:  Support and development of Thousand Parsec client (Python, wxWidgets)  Graphical user interface design and support

06.2010 Participation in «SYRCoSE» conference (Spring/Summer Young Researchers' Colloquium on Software Engineering), speech on «Single-Window Integrated Development Environment» topic. Nizhny Novgorod, Russia.

Knowledge and Skills Software  Object-oriented analysis and design (UML), design patterns usage engineering  CASE tools usage (Rational Rose, MS Visio, Umbrello)  Experience of team development using issue tracking tools (Trac, Redmine), version control system (Git, SVN, Mercurial)  Acquaintance with wide range of IDEs  Build systems usage (Make, CMake, Autotools and proprietary)  Automatic documentation generators usage (Doxygen)  Building formal mathematical models of real processes  Public speech and discussions experience

Graphical user  Use interface requirements analysis and development interfaces  Goal-oriented interface design  GUI prototyping  Usability principles application on different abstraction levels

Imperative  С/С++, Java (basic) programming  Ruby, Python, Windows Shell, Bash (basic) languages  Assembler Intel x86 (basic)  Prolog (basic)

API libraries  STL  VCL, CLX  Qt 4  WinApi  wxWidgets  Boost (basic)  POSIX API (IO operations, network,  OLE (basic) processes)

Databases  PostgreSQL  Microsoft SQL Server

Declarative  HTML languages  XML (XPath, XSLT)  SQL, T-SQL

3D graphics  OpenGL programming

Operation systems  Microsoft Window systems: advanced usage, development  Linux systems (Ubuntu, Debian): advanced usage, development  Cisco IOS: basic setup of Cisco devices

Interests  Disciplined development  Usage of appropriate development technologies and practices  Agile development methodologies  User interface design  Application of formal mathematical methods to software development

Additional Information Birth date 09 June 1989 Birth place Moscow, Russian Federation Languages  Russian (native)  English (fluent)  French (with vocabulary) Certificates &  Translator in «Applied mathematics and informatics» sphere. Computational Exams Mathematics and Cybernetics faculty, M. V. Lomonosov MSU, 2010. Grade: excellent.  TOEFL iBT 114 (30/30/24/30) taken in 11.2010  GRE General 680/800/4.0 taken in 11.2010 Key personal  Pursuit for quality of code qualities  Aspiration and ability of learning  Research work abilities  Effective time organization

References are available on request

02.2011