CV

CV


Korchagin Dmitriy Sergeevich 

Birth date: 26 feb 1991 

Marital status: married 


Contacts:

Phone: +7 911 982 37 87

E-mail: korchagindm@gmail.com

Telegram: @sky_bmo

Skype: korchagindm


I was born in Kronshtadt near Saint-Petersburg. Until 5th grade I studied in Russian school, after that I studied in school by Consulate General of the Russian Federation in Germany with advanced study of languages - English and German. When I came back in Russia, I entered school with advanced study of math and computer science. For a short time I learned Pascal and started learn C. I took part in Saint-Petersburg competitions on math and computer science. 


In 2008 I entered university (State University of Aerospace Instrumentation) on Faculties of Institute of Information Systems and Information Security.

In this time I started work in freelance. I made courseworks for some students and developed websites. I was trying to make all from design to code by myself. 


In university I was writing code on C++, I developed my own program for compressing files of different types. For each type I used special compression algorithm. Some algorithms used statistics of frequency of occurrence of symbols. I made two options for this tables - generating for each unique file or using sum of all previous statistic.


In the time I became interested in developing Android applications. I wrote my own books reader for txt and fb2 files.

In 2011 I bought my first MacBook and started learning Objective C. I watched Stanford course about developing iOS applications. After making two or three simple applications I found work in small company ITVA. This company works developing both on custom software and software development and proprietary products. I was in team that was making proprietary products.


In some moment I realised that I don’t have enough time for working and studying in university. I chose work because there I have learned much more about developing, programming and those knowledges were deeper.

In ITVA was only one iOS developer - and that was me. I made two applications there. Calculator solving difficult equations. All of calculations was making on server side. I should only make nice and handy interface for entering those equations (including fractions, cosines, mods, N number of unknown and etc). Second application was online radio with ability of listening audio streams, adding new sources of streams, recoding music (with separation on songs and setting meta data from streams). In this project I first time worked with audio on low level. Because of big number of stations (~50 000) I worked a lot with Core Data, made migration from Core Data to pure SQLite. In this company I learned how to work in team, how negotiate with server side developers and designers. And there I was responsible for apps publishing. I learned and understood Apple HIG and became skill how to speak and resolve problems or misunderstanding with Apple review team.


In 2013 I found new job in company that was part of big holding company. Project had to give opportunity make investments simple for all. Idea was to make crowdfunding service where all who gave money received not goods, but companies shares held. Firsts we wanted to make iOS only application, but in process of developing this decision was changed. In very short time I learned lua programming language and made MVP of application on cross platform engine Corona. It's a pity but project didn't receive agree of directors board. I found new job in this holding company in game dev company. Under my leadership was made two prototypes of new games - racing and MOBA. Both optimised for web. Here I first got position of team lead. Under my leadership was two developers, two artists, one 3D modeller and one game designer. I was writing code for games too, making code reviews and choosing all main technical solutions. In this projects I deep learned how 3D engines work, pipeline rendering of images from 2D or 3D models. All development was made on Unity3D and programming language was chosen C#. Unfortunately because of finance problems all projects was closed, but company gave us all rights on this games. One of my colleagues found partners to continue of development. First all development was made remotely, after couple of month I relocated to Chelyabinsk. I lived there four months and made good looking MVP with connection to server and gameplay for 10 players. Because of misunderstanding with partners we froze this project and came back in Saint-Petersburg.

I and two my friends took decision to make our own startup. That was social service Bear.gs. Nearest analogue now is stories in Snapchat or Instagram. In our service users had opportunity publish photos and videos making history from it. There was smart feed, that could display only interesting content for each user. I was responsible for iOS development, app and web design. I worked with OpenGL ES for making good images and video editor (with help of GPUImage and without it). Client-server communication was made on WebSocket. And of course because that was our startup, we had to making a lot of decisions - what to do next and how. Also in this project I worked a lot with statistics and analytics of users for understanding what would make our targets closer. We reached good users retention and involvement, but after year we ran out of the money.

In september of 2014 I found job in e-commerce project. Tattoo Media has been selling technique for tattoo masters. I made applications for iOS platform. I made 4 applications by my own. Every application had unique design. Firsts I wanted to make base application and then only change design. But a lot difference between servers and API changed my plans. After half of year I made first three apps and made this generic template for application. I invented how to isolate network layer and use all of interface solutions which I made previously. 

In july of 2015 I found new job in company that makes social apps. I work here until now. I came there when they wanted to rewrite whole application from objective c to swift. I started there from iOS developer. That was my first commercial use for swift (previously I experimented with is from first version). In all projects use our own network stack based on web sockets (that we made by our own from idea of architecture to implementation), ReactiveCocoa and our code generator that makes code from specification (network methods, data structures and mapping functions for it). Also we make a lot experiments. I made applications on React Native and React for web, I made server side of python. Now I am team lead here and lead all development team. I look after development of all new application features from idea to production use, including needed statistic and code reviews. Also I suggest ideas for new or changes of old features. I make mockups, overview and plans for this changes. I discuss other people’s ideas. I take part in managers meetings, where make reports about of done work and plans on new week. Also I converse with technical team, explain new features, listen to new ideas and make daily scrum on the agile system.


Report Page