Each of us has our own dreams, goals, hobbies (and there is work). Sometimes all these things coincide, sometimes they coexist, and sometimes they even diverge. I was very lucky and, in fact, I was able to combine them and find the work of my dreams, which perfectly combined in itself dreams and hobbies.
This post was inspired by today's two habrastiyami, namely
"How I went to work as an IT specialist in London" and
"About love of programming languages" , because it is love of programming language, in combination with my two main hobbies, threw me into the unofficial capital of the European Union.
Introduction
Since childhood, I was interested in two things: aviation and computer technology.Let's start with a small autobiography, my father is a military pilot, I spent all my childhood in military camps, falling asleep and waking up to the roar of jet engines, while being an apprentice, I jumped out of a working helicopter with a piece of matter, personally packed into a satchel and called the parachute D-1 -5u. This did not pass without a trace, and I fell in love with aviation with all my heart, so there was no doubt about the choice of profession. Having received a higher aviation engineering education, I even flew a little as an onboard aircraft equipment of a ship (an airplane weighing more than 40 tons is called a “ship” in the Air Force), but at the same time I didn’t throw my second hobby: while studying at the institute, a disk with Mandrake was excavated, Borland C ++ Builder's button knob was studied to write labs (I can't name it with programming), and the “system for suppressing the effects of atmospheric turbulence on an aircraft crew” was designed as a thesis based on neural networks with genetic learning algorithm, how!
')
And I want to fly
But I was not destined to become an air force general - fate decreed otherwise, and I left the ranks of the Armed Forces. Then there was a Linux-engineer career in various Russian and international companies, but always attracted to airplanes, hours were spent under the glide slope of the nearest airports, in simulators and air forums, I only loved business trips because of flights, and always carried the “right” GPS with me Navigator, which had the "Flight" mode to follow the change of flight levels and airways.
Of course, I constantly monitored vacancies and possible development paths in civil aviation. The aircraft's technician - yes, but the computers there at the level of “the L lamp lit up - change Block B”, but in the winter and in the summer on concrete, and it was necessary to ask for money for retraining, and I really didn’t want to fall for bondage to the employer , we need certificates, and the salary made me cry for the domestic aviation industry. Of interesting things, for example, was the vacancy of an engineer for a simulator at S7 Training, but at that time I had no rights, no car, and they were offering a salary that was not very high for shift work 50 km from the house was paid less than admin a couple of servers.
At some point it dawned on me - but after all, the software for aviation is also written and made by ordinary people, but the Gods do not burn the pots, but what is the most “aviation” programming language? Right, Hell! By that time, I had already somehow known to hell - my roommate was praising this “wonderful language without buffer overflows” to me and gradually I began to get involved in the community (yes, there is a community, including in Russia)
Towards your goal
The next task was to find a list of potential employers, their requirements and, if possible, to “light up” in these circles.
The search for even potential employers in Russia did not give any results, there seem to be firms that develop software in this area, but they either do not lead the set, or in the requirements of “expert C (++)”, or even more fun than ASM, but the overseas world has shown that not everything is so bad: EADS, Boeing, several French near-airbus companies use Ada to develop themselves and even vacancies periodically appear; Well, in general, a dozen companies were recruited (for the whole world!). One problem arose - they didn’t want to take from Russia (and, as will be seen later, the matter is not at all in visa bothers). And here came the decision so popular lately - it's time to throw.
Emigration
The search for possible immigration did not take much time - one well-known red-cap company agreed to provide me with an old rusty tractor, for the people in the support, though the third line is always needed. No, it was not so easy and smooth, but nevertheless it didn’t represent any particular difficulty. Three telephone interviews - Job Offer - 3 months of paperwork and type D (long-term) visas are pasted in the passport, the process of emigration to the Czech Republic is described on the Internet in great detail, I will not stop here. All belongings are sold out, the remnants are folded into the beloved Prius and on the night of December 25 (with a fine calculation for the good customs officers who will not be interested in a car littered with belongings from the backs of the front seats and to the trunk lid, and no queues at Christmas), our family of two the man headed towards the state border of the Roosi Federation.
Highlight
The next step, as you remember, was to “light up” in “hellish” circles, and, at the same time, to learn a language. Since at that time I used Fedora Linux as the main distribution, it was logical to create a development environment for this distribution, package libraries, fix errors and other routine-bureaucratic work, and write to myself and help others. In Debian Linux, by the way, this same work is done by Ludovic Brenta - my current colleague (but I didn’t know where he was working until the contract was signed).
I was noticed
And finally, that long-awaited moment came: I receive a message on Linkedin from a recruiter from a consulting company: “We are looking for a Junior Software Engineer to work with one of our clients in the field of Air Traffic Control Management in Brussels.” Three telephone interviews:
- HR itself, common questions
- Project manager by consulting company - Java / C ++ programmer - questions on patterns, problems of parallel programming and a brief excursion on how to behave in an interview
- (As it turned out) The current timblid. Questions about building complex, distributed systems, questions about problems with memory (everything is simple - Philip is one of the key developers of valgrind), bind, connect, SQL, find / grep / sed, etc ... “How many lines of code did you write?”, I even now, after two months of work, do not remember how many lines of code I wrote on this particular project.
- Web testing for the
presence of a language compiler in the brain language knowledge of Ada. Then I cheated a little - in the test, when you pressed the Ctrl button, a “two” was automatically set (in order not to copy the text and not to check how the compiler behaves) ... Linux users already guessed what the trick was, right? Nevertheless, not all tests could be stupidly copied and checked, and it was necessary to type at least 80% of the correct answers and I already thought that my interviews got stuck on this - Face-to-face interview, which coincided with my speech on FOSDEM on the topic “Ada in Fedora Linux” (the presentation can be found on SlideShare, the speech itself should be somewhere on the Internet). Problems “to write code on a piece of paper”: “Find and Replace”, “rotation of the outer border of the matrix”, calculation of time spent on climbing in different atmospheric conditions and some other ... In general, 6 hours of hell (I don’t even know from which root hell or hell) torments after the flight and 14 hours on their feet. And the provocative question about the frequent change of work ...
The first question was, of course, “Your citizenship?”, Because my “international” resume confused everyone, the answer “Russia” upset them at first, but during the second interview, something like “We learned the work permit would be It’s done for 2 months, you don’t need a visa, it suits us, ”my comrade, who had“ Russia ”on his resume, didn’t even begin to interview, I don’t know the reasons, alas. Well, it is worth mentioning that the work permit was ready before my “working out” period ended in the Czech Republic,
And here it is - the long-awaited Job Offer! Since May 1st, I am a programmer in the
Enhanced Tactical Flow Management System development team at Eurocontrol. (Well, in fact, not in Eurocontrol itself, since all the development is given to the subcontract). The system is really complex and is responsible for Flow and Capacity Management over the entire territory of a single airspace of member countries:

It has more than 2 million lines of code, and has experienced several cardinal changes over its almost more than 20 year history (and this is not the limit, for individual components were written in 1986), during which very interesting problems of scalability and reliability were solved. and reliability again, but more on that in the next releases!
This is how you can not talk about your favorite and "working" programming languages, but make a worker out of your favorite, no matter how exotic or extinct it may seem. And yes,
dreams come true not only in the advertising of the gas giant, it is worthwhile to apply only a little effort diluted with a bit of luck.