I met
Mikhail Samarin about a month ago when he became interested in my conference organization activities. Mikhail has been living in Helsinki for 15 years and occupies the position of one of the business directors at
Futurice , a major Finnish outsourcer. Among other things, Mikhail is
twice the speaker of JavaOne (2011, 2012) and
twice the Microsoft MVP (2013, 2014).

In connection with the well-known events, more and more often you hear the same thing around: “it's time to blame” I am now far from this thought more than ever (I have many projects now, and all are connected with Russia, and I don’t like Europe very much with the States), it is difficult not to notice the emigrant moods. Especially among programmers.
')
The situation is such that Futurice (FuturIs is read in Finish, and Futurice in English) is getting harder and harder to find good developers in Finland, a country with a population of 5 million people. In this regard, the company decided to
start looking for intelligent engineers in Russia and relocate them in Helsinki . And in particular, to do it at the Russian programmer conferences, for example, on
.NEXT .
The things that Mikhail told me seemed very interesting to me, and therefore I asked him to give me an interview, which I bring to your attention.
Michael, let's try to go chronologically. Please tell us where you were born, where you studied, and how you came to programming.Born in Rostov-on-Don 42 years ago, he graduated from the mathematics school, then the Taganrog Radio Engineering Institute. As a result, he lived in Taganrog for 10 years. There he received a diploma, and in 1997 he defended his thesis in the field of neural networks. Now this area is called “Computer Science”, and then we called “Computing Machines, Complexes, Systems and Networks”.
Then the neural networks were active area?At that time there were a lot of interesting works. In Taganrog there was a unique research institute, it was called the Institute of Multiprocessor Computing Systems. They even had their own electronic database, that is, they could even make experimental chips themselves. Everything related to parallel data processing, multiprocessor systems, neural networks - this was a very large and active subject already at that time.
Unfortunately, the whole process of my studies took place during the collapse of the Soviet Union. In Taganrog, a provincial city, everything was especially hard. We had a good department, where there were several interesting projects related to international studies. Since it didn’t bring much money, at the same time I was very much engaged in developing to order. At that time, the main tool was Delphi - the only real thing with which it was possible very quickly, in just a few days, to make a full-featured program.
In addition, I did a lot of forensics, military forensic medical examination.
How did you do it?In Rostov there was a very large military forensic center. All this happened during the Chechen conflicts. A number of unidentified bodies appeared in Rostov for medical examination. At that time, according to financial and technical possibilities, it was impossible to do DNA analysis - there simply was no material and technical base. Therefore, alternative systems were built to identify the dead: by inheriting fingerprints, comparing skeletal remains with lifetime photos, photofluorogram. I did this with my dad.
In general, a very interesting story came out. My father works at the Neurocybernetics Institute, which was associated with this project. It so happened that for some time they could not find a developer. I offered to help him temporarily with the project while they were looking for suitable programmers. As a result, I stayed there for a very long time. They had very good guys. One of the powerful fingerprint identification packages developed as part of that project was even patented in Russia.
Was it some kind of hardware stuff? Sensors? Sensors?No, it was a purely methodical work. Fingerprints are taken, marked up. Each fingerprint has a unique type of patterns. There is a whole science about which types of patterns can be inherited from parents, and which cannot. Therefore, it is possible to cut off negative results with such methods, that is, to make statements in the spirit: “It’s not that this child is unambiguously the son of these parents, but it can be said that this child is most likely not the son of those parents”. I did a lot of work on this, and part of the work I eventually went to my dissertation.
You said that the institute was involved in multiprocessing things. For an ordinary programmer, the multiprocessing theme gained popularity a little later, in the mid-2000s, because it was not until 2003 that AMD made the first desktop dual-core processor. And only then the whole boom began, because people realized that even on a laptop, now there are two cores - that's all, and you have got. Few people knew how to work with it: all my life it was some kind of server thing somewhere far away in data centers on expensive machines. And the people in Taganrog already had a whole institute. Funny.Often, when you communicate with scientific representatives at the age of different nationalities, there is a very clear tendency when "We solved this problem easily in the 1970s." It is interesting to observe yourself in this role. With regard to research related to multiprocessor, multi-threaded data processing, neural networks, intelligent systems, then the developments that were by the late 1980s and early 1990s in the Soviet Union, in fact, were very interesting.
Unfortunately, much has disappeared and is now lost due to the fact that people were engaged in survival rather than scientific work. This is a great national tragedy, the loss of science. A lot of people left, including your humble servant. The intellectual outflow in the mid-1990s was colossal, which affected how long it has to be restored in the country. But, really, when you have a choice: either to feed the family, or to do science, there is no choice.
And what about this institute now?I do not know for sure. As far as I understand, this entire scientific complex is now part of the Southern Federal University. Quietly everything is getting better. In the late 1980s, when I enrolled, the institute’s reputation was very good. It was one of the few institutions that actually worked on the equipment, and according to rumors some hardware research was related to Baikonur. Since we all dreamed of becoming astronauts in childhood, the motivation of many guys to enter there was obvious. Although, in all honesty, this was not my first choice: I initially entered Baumanka.
After the collapse of the Soviet Union it was very difficult, especially in provincial cities. I think that I was also lucky in the sense that despite the fact that the University of Taganrog had a hardware orientation, most of its projects at that time were associated with software.
It was a really unique time: going to Taganrog in a tram, you have some programming problem in your head that you can’t solve. It was enough to shout into the air, and half the rumble could start helping you. Such was the
concentration of developers in the city. There is a very interesting environment in terms of programming.
At that time, Delphi was the main tool. He allowed extremely quickly to make decisions for customers, instantly communicate with databases. Then it was a way of survival for so many guys. For example, it was possible to make some kind of financial system for a small firm. The time frame for creating such a system in Delphi compared with, for example, Visual C ++ (versions, probably, 3rd or 4th) were less at times.
Is it about development speed?Yes. It was possible to come to the customer, sit next to him, and directly "live" to show him what was happening. It was a very interesting period, the heyday of real visual development. From about 1995 to the early 2000s, Delphi was a salvation for many individual developers.
And then what has changed?First of all, a lot has changed for me personally. One Finnish organization annually organized a competition for young scientists. The winners, who were 25 people, were invited to a week-long seminar in Finland. It was called "Winter School".
What happened at this seminar? They invited Finnish professors from completely different universities, and for a whole week the contestants cooked with these professors, after which the professors chose for themselves those with whom they would like to continue working. For these guys, this organization arranged a science grant for a year so that the student could come to Finland to work.
I submitted an application and was among one of the 25. The distribution was this: about 20 people from Moscow and St. Petersburg, several people from Novosibirsk. From the south of Russia I was alone. In 1999, I came to Helsinki for a week, met my future professor. Since my candidate was already defended by that time, and for them it is equal to a PhD, it was formally a postdoc.
Grant was small, needed a side job. Since by that time I had a great teaching experience in my native university, I immediately agreed with the professor that I would teach at the new place.
So in 1999 my family and I moved to Helsinki. There I taught at the university for 5 years and did other interesting things related, in particular, to multi-screen media installations and mobile technologies. Then for three years I was an R & D manager in a small company that was involved in video security systems. We made powerful Linux servers that could pull about 80 cameras at the same time, and supplied them with ships. Almost the entire Finnish fleet of ferries had our systems on board.
And finally, in 2007, I found the company Futurice.
Judging by the fact that you are speaking with us on .NEXT, is your work in Futurice related to .NET programming?And with this in particular. I want to remind one thing to the guys who start their career in development, trying to become professional developers for a long time: they constantly have to retrain and redo everything. Despite the fact that we have our own favorite languages, development environments, it is extremely important to be and be proficient in
different languages, tools and platforms.
In the old days I was very busy and actively engaged in Delphi, then I worked a lot on the Java platform and taught students this technology. Java was already the main university language at that time. I have done several courses on Java, Java 3D, multimedia. For a long time, Java remained a tool that gives bread to developers. I did a lot of Java ME. Twice he even spoke at JavaOne in San Francisco.
Tell us more about this experience.Our company has worked with Nokia for many years. I am sure that many of our readers were holding a mobile phone with one of the many mobile programs created by our company for Nokia. We also actively engaged in the development of any training materials. Personally, I have been doing a lot of what is called “Development, Training and Evangelism” in Java ME, because Nokia had a giant traditional sector - low-cost mobile phones with Java.
The first time I talked about Java 3D capabilities on JavaOne on cheap mobile phones: you could make full-fledged real graphics on Nokia's super-cheap Nokia phones. Many other manufacturers ignored these areas of development, although, in fact, the hardware capabilities were.
In 2012, the JavaOne organizers invited me to become a member of the selection committee, the Content Committee in JavaOne on mobile technologies. At the same time, Nokia released a new line of its cheap touchscreen phones, with new software features. Therefore, at JavaOne in 2012, I had a review report on what could be done in this direction.
So you do a lot of programming for mobile devices?It so happened that many of my projects are really connected with mobile technologies. In general, in our company, business is evenly distributed 50 to 50 between web technologies and mobile platforms.
Since we have good relationships with both Nokia and Microsoft, when switching Nokia phones to Windows Phone, we were one of the first in Europe to start developing for this platform. Some mobile applications for Windows Phone, which go under the Nokia brand, in fact, were created by us. After many years of non-disclosure, we finally got public reference rights for some of them. Now we can speak publicly, for example, that our team from Berlin took part in the development of HERE Maps, that is, Nokia maps for Windows 8.
So, we have recently rather deeply focused on the Microsoft market. In general, our company is built in such a way that we evenly support all three mobile platforms, so, for example, when looking for developers, we are not tied to a specific platform or framework, but are looking for good, talented people. One of the secrets to the success of our company, which has existed for 14 years, is that we try to hire not specific specialists, but good developers who can do everything and who want to transfer from platform to platform. The same thing happened to me.
The company is built on this, that we are investing in people, and not in any specific technology, because technology is changing at a tremendous speed. I, perhaps, did not meet other such companies.
The others are what?First, the company Futurice was organized 14 years ago by four comrades, three of whom with a solid engineering background. All of them are still the leaders of the company, and this lays a very interesting imprint on the culture of the company when the company is created by good
engineers with a business sense.
Secondly, we have long decided that we will create products specifically for other companies, that we will not make our own. In recent years, the minds of young developers own hopes for a gold mine and Klondike: "Now I will write a program and become a millionaire." This thought has destroyed an insane amount of human fates and small companies and startups. It is much more likely to turn around if you are planning a long-term development of the company and its increase.
There are a large number of very good companies where development is not the main business, for example, a publishing house, or a paper factory, or an airport that does not have an active development team. They don’t need a team, just from time to time they have to make some kind of service, mobile application. It is much more profitable for them to take a professional team from another company and work with it for some time. If the need arises, then make support contracts, if the need arises - hire her again.
And we realized a long time ago that it is this business model that will allow us to grow very organically, by 25-30% per year. That is, without engaging in super-explosive growth of the company, namely, natural, organic growth of the company up to 30%.
This means that you double every three years.In general, yes. When I came to the company, I was an employee number 42. Now there are almost 250 of us. It is important to note that the mid-2000s - it was just the very boom of contractors - what is called the word “outsourcing”, to the countries of Eastern Europe, to China, India. Huge money went there, mostly in such organizations, where customers often have no opportunity to work directly with the team.
There are successful cases of such Black Box outsourcing, there are not very successful ones. At Futurice, from the very beginning, at the level of common understanding, at the level of human culture, there was an attitude that we would take our very small team and plant it with the customer on its territory to integrate with his team. This is necessary in order to build a fully iterative process of determining the technical specifications, its implementation and support.
We take the Agile-team, and they work directly at the customer. Naturally, everything can be done much cheaper, having a project as a Black Box for a customer. In this case, the customer has no opportunity to directly influence the developer, that is, the process is not continuous. Customers do not like it, so do we. Therefore, we work transparently.
Our business idea was implemented quite successfully, because we worked a lot with Nokia, working with Microsoft, with large cameramen (T-Mobile, Vodafone), with local Finnish operators, publishing houses, somehow even working with Amazon through Audible. We have a big team in Berlin, a small one in London, there is another team in Switzerland.
Do you personally have a big team? Do you do many projects?Now about 50 people. Earlier in the heyday of Nokia there were about 20 and we are doing 70-90 non-gaming mobile projects a year. Now there are fewer projects per team, but their size is much larger. In total, the company makes more than 200 projects a year. The pledge of our success is a combination of very talented guys, clear planning, good customers, who after a while begin to trust you. , - , , - , , , , . , , . , .
, ?. , - , .
, .
. , , . — , .
?, , 14 . , . , , . : , , - …
, , , , , . , . , , . , . , , , , . , , , — , . , , .
— . , , - , . , , : « , , , . !» , .
, - . Microsoft Design Camp , , . : , , , , , ..
, , , , , . — , — .
. , Windows Phone iPhone-, , – . , . : « , , , iPhone ( Windows Phone), - ».
, , - . , . 18 ( ). — , , , . , . .NEXT, .
, , - , , . « , ». , , , .
- , ? - ? .NEXT, , … , , ? , ?It's a difficult question. . , , . , «» . , .
, , , . Nothing like this! . , .
, – . - , , , , . . — - , , , . -. , - , , , sales-. , , , . .
- « »?Yes. , . , , : 130 , - , . , 40 50 , , , , , .
. , . — . — - , - -. , , .
— , . good feeling: , . , , . – , .
, , , , ?50 50. , , Lean Service Creation. , , -, -, - , , - .
, , Digital Zone. - — . CodeFreeze , , , . , , : «, e . , ?». , .-. ,
- . , , , . , , , . , . , , , .
, . . , .
, Sanoma, , , National Geographic . 20 . , . — . , , , - iPhone-, . , , -. . – .
: . – , - . .Exactly. . , , , . – , , . , , , .
, - – . , , .
?. 1000 , . . , .
?Yes. : . Linux , kernel . , , - - . , . Facebook.
, , - . , , , – - , , -. , . , , .
, ., . . , – . « ». - , , -, . . , – . - .
Futurice ? ?. ? , , , , , , . , , , . , , , . It is very important. , IT-. -, — . . . .
. 2012-2013 Great Place to Work . . , 500 .
, . ? , web applications, desktop applications, mobile applications, services.Customer Facing Services, , , . Nokia Microsoft — . HERE Maps, .
– . . , , .
Sports Tracker. . , , , ERP-, . .
Research-, Nokia Research Center. -.
, , , , , , , .
NDA — NDA. , HERE Maps, Nokia, – ?, .
, 250 , . , . ? ? ? , ? , , ?, . , . . , . , , , , .
, , , . .
, Nokia . , , 30 . - . : , , – 40 . , . , , , , .
, . , .NEXT . . , , , . , - , . – , .
– ., . – , . 3,5 . . , - . , .
?, , , . - – . - , « , », , . , -: .
?, – . , . .
?Easy. . « »? . , . , - – , , – , -… , , : « ? , ?». , . , , , , , , , , . , , , .
What happens next? , , , , , .
, , ?Right. , , . , , , , . , , , . , .
, , . . , . , , , . , , , , , , .
, : , , , , , high school , ? , . high school , . , . , , - , . , , , , , .
. – , , , , -, IT-.
-?, . , , -: , . , . , , .
?, — . : , , , , .
? ?. . , -, : «Yes, yes, yes», , : «! , », . , , , , , «» – .
, , , , , , — , , , , .
, , , , , PhD, . , , , , , , , , , , . , , . , …
, , . : «, ». , ( 1990 , , 25 ) – , . , - , . 8- – , : . Spectrum, Atari, Macintosh.
– Assembler. , . , : , , - , . , -, .
, , ZX Spectrum. , , , . , ZX Spectrum 20 . 8- 20 software titles – ! , , — . – . 30 , , .
«No Silver Bullet»., “The Mythical Man-Month”, IMB 360, . . , , .
Macintosh Mac OS. iPhone , – 2008, , « iPhone ?» Symbian !
Android, Mac OS iOS?, . - , , , . – Windows, iOS Android, – -, . , - , .
.NEXT.. , .NEXT, , . , , , . , , .
. , . — . , , Runtime, . , .NET , , .Yes. . , , - .
, , ? .NEXT . , — , — .– , Oredev . -. , . — . Microsoft . , Slush. , -. - , . 14 . — . .
Microsoft, Build, . , . Build — . , .
Build, JavaOne, - ?, Microsoft, , , Microsoft WPC, Build. E — Mobile World Congress, . , , - , . , Nokia : Developer Day, .
?Yes. , .
- ?Of course. , , learning budget, . — Adobe MAX, .
, . . , , , Nokia, Microsoft. , -, . , , . , .
.NEXT Futurice?, , 18 , - .
, Microsoft – , , , . , Java. Java-, , , JavaOne, , , .
. Oracle ., , JavaOne . , Microsoft TechEd .
JavaOne, -, - . . ? -, . Java-, , Oracle.
.NET-, , MVP , MVP Summit , - Microsoft. . , , , , - , - Visual Studio .NET Framework - . , – . .
.NEXT.Windows Phone, -, - Nokia, , Microsoft- Nokia. , Nokia, .
, . Windows Phone , , , , .
?Yes. , , . . Windows Phone, . , Windows Phone, , Nokia . 41 Lumia 1020. , Lumia 1520 20- .
, , . Windows Phone — : , , . , .
, , - , . How to do it? , , , Imaging SDK, .
, Lumia Sensor Core Snapdragon, . , . Sensor Core SDK Microsoft, , . .
, Bluetooth LE , Nokia Treasure Tags. - Bluetooth ? , , .
, Lego-, , , , , - . Windows Phone .
, . ?. .
, ,
.NEXT . , . , . Come!