📜 ⬆️ ⬇️

Career programmer. Part 3. University

Continuation of the story "Career programmer . "

After graduating from night school, it's time to go to university. There was one technical university in our city. In it, there was one faculty of “Mathematics and Computer Science”, in which there was one department of “Computer Systems”, where they taught future IT-students - programmers and administrators.

The choice was small and I applied for the specialty “Computer programming”. Ahead there were 2 entrance exams. By language and mathematics.
')
The examinations were preceded by an interview, and the choice of the form of study was a budget or a contract, i.e. for free or for money.

My interview was attended by parents who were worried about their admission.

Of course they chose the contract form of training. It cost to the word about $ 500 / year, which in 2003 was a lot of money, especially for our small town. I remember well the dialogue between the father and the girl from the selection committee:

Girl : You can try to pass exams for the budget, and if it doesn't work out, then go to the contract. You can pay in parts.
Father : No, we have already decided that we will enter the contract
Girl : Well, why don't you risk anything
Father : No, it's still a risk. Tell me, is everything coming to the contract?
Girl : Yes, everyone does. Probably only complete morons can not
Father : Then we have chances ... grinning, he said, and we signed the admission documents

Of course, the performances from the senior classes were still fresh in the memory of their parents, so over the years I understand why this has been said.

In the summer, before admission, I continued to buy books for all $ 40, which my grandmother gave me with a pension.

From memorable and significant:

1. “UML 2.0. Object-oriented analysis and design . The book, which taught me to design software of any complexity, think through the architecture, put everything into components, prescribe use-cases, draw UML diagrams. This is the knowledge that seniors, lead, architects need. To those who materialize the system from the void, when there is only a description of the idea.

I know people who are already over 30, but they still cannot make a decision if there is no indication from above, from a developer with higher rank. In freelancing and distant work, when you often work one on one with a client, this knowledge is also invaluable.

They are also relevant for indie developers who are creating new applications and services. Although few bother detailed design. Therefore, we have software of this quality, swallowing all the memory, with UX curves.

2. "Standard ANSI C ++ 98" . Not really a book, but this is more than 800 pages of reference information. Of course, I did not read it section by section, but turned to the specific rules of the language when developing my C ++ compiler. The depth of knowledge of the language, after studying and implementing the standard is not described by any excellent epithet. You can say that you know everything about the language, and even more. Very long, hard work to study the standard. But in front of me, I had 5 years of university, so that no one drove into my neck

3. "Delphi 6. A practical guide." . It was a rapid leap into the world of GUI and form-blindness. There was almost no entrance threshold, and I already knew Pascal pretty well. While studying at university, I wrote the lion's share of commercial programs in Delphi. It was software for university graduate students, accounting for small businesses, state. institutions. Then there were several orders for freelancing. In the middle of the zero, Delphi dominated the Windows development market. Until now, at the checkout in local stores you can see the program, with familiar fonts and controls, which immediately distinguishes the Delphi application from any other

4. "Tutorial MFC" . Having mastered Delphi, it was logical to continue creating UI in C ++. It was at times more complicated, not everything worked out and was understandable. However, I brought this technology to the stage of application in commercial projects. One German antivirus company still distributes my program written on MFC.

5. "3 disks with MSDN Library 2001" . I did not have the Internet right away, and as far as I remember, the MSDN Library was not online in 2003. In any case, it was easier for me to install the MSDN directory on a local PC and it was easy to find documentation on any WinApi function or MFC class.

uml2
The most significant books read in the period 2002-2004

These are books that were read in the period 2002-2004. Of course, now this is a decrepit legacy, which is written in batches to .NET and Web technologies. But this is my way, maybe some of you had a similar one.

First semester


At the end of the summer, it's time to take the entrance exams to the university. Everything went smoothly. I passed the exam in language and mathematics and was enrolled in the first year of the specialty "Computer Systems Programming".

On September 1, as it should be, I went to the first couple in my life. “Student time is the brightest time in my life,” my mother told me. Willingly believed in it.

On the first day, 3 couples in general subjects passed, everyone met each other in the group, and in general the university left a pleasant impression.

Finally, we began to learn true-programming in the C language! And, in addition, taught the history of computer science, digital technology and many other relevant information for me. Even mate. the analysis was by the way, as he allowed me to understand more deeply what the deeply respected Donald Knuth wrote.

The programming pairs were in a driving atmosphere for me. Finally, people came to me for help. I felt fit. At the beginning of the pair, we were given the task to write a program. The task was designed for a couple and a half, then half an hour to check. I managed to write a task in 3-5 minutes, and the rest of the time I walked around the office and helped others deal with the task.

There were not enough computers for the whole group, so more often than not we were sitting in two for one PC. Seeing my abilities, three, four sat down at my desk, it happened, and 5-6 people did not disdain to sit down to learn what I learned a couple of years ago from the book Kernighan and Ritchie.

Classmates saw my abilities and came up with questions themselves, or suggested simply walking after couples. So I made a lot of friends, with most of whom are still friends.

In winter, it was time for the first session. In total it was necessary to pass 4 subjects: 2 types of higher mathematics, history and programming. Everything gave up, where by 4 points, where by 3. And I was programmed automatically. The trainers already knew my skills, so there was no point in checking me out. I happily appeared with the record book at the session in order to immediately get a painting in it and was already going to return home, as classmates asked me to stay and stand outside the door. Well. Having placed at the window sill, at the exit from the office, I waited. Next to me was another guy spinning, who also passed the exam with a gun.

“Why are you lingering here?” I asked.
- “I want to make money on solving problems. And why are you? "
- "I, too. Just not going to earn. If you need help, then out of the goodness of your heart, I will just decide.

My opponent hesitated, and muttered something in response.

After a while, classmates began to leave the audience, bringing with them the folded leaflets on which there were tasks from the exam.

“Help me decide” - asked the first daredevil. “Okay, I'll decide now,” I replied. Not even 5 minutes passed, as I scribbled the solution on a crumpled piece of paper with a ballpoint pen and gave it back. Seeing that the scheme is working, people began to leave the audience much more often, and sometimes even two or three at a time.

On my working windowsill there were three piles of leaves. In one pack of new arrivals TODO-sheets. In front of me was a list of In Progress, and next to it was a pack of “Done”.

It was my finest hour. The whole group, and this is almost 20 people, turned to me for help. And I helped everyone.

And the guy who wanted to earn, hastily retired after a few minutes, realizing that there was nothing to catch, all attention was focused on the altruist.

The whole group passed the exam for 4 and 5, and now I have 20 friends and an unshakable authority on programming issues.

First money


After the winter session, there were rumors throughout the faculty that there was a guy who could solve any programming task, of which we were asked to go home or during the session. And not only among first-year students, but also on senior courses there was a rumor.
As I already wrote, in the group I had friendly relations with everyone after the “high point” on the exam, and we began to communicate very closely with a couple of guys. We became real friends, and spent a lot of time outside the uni. For simplicity, let's call them Ilon and Alain (nicknames are close to the present).

Ilona we called by name, Alain, was nicknamed in honor of Alain Delon, for his ability to conquer any beauty. The girls literally circled around him, in various quantities. In terms of dating and twisting relationships at night - Alain Delon had no equal. He was a real alpha male for the female, which is not typical of most IT professionals. In addition to affairs amorous, Alain by vocation was a designer. And if you wanted to draw something, for example, the then popular flashing banners of the Web 1.0 format - then he did it with ease.

About Ilona can tell a lot more. We intersect with him so far, already ten years after uni. In the first courses he was a skinny, rather silent guy. (What can not be said about today's snarky uncle in a jeep). But I was the same - thin and taciturn. Therefore, I think we quickly found a common language.

Often after the steam, I, Ilon and Alain, gathered in a beer garden, covered with a tarp. First, she was across the road from the uni, and secondly, for a “ruble” and 50 kopecks, it was possible to collect nishtyakov for 2 hours of an incendiary party. Like draft beer and crackers. But the essence was different.

Ilon and Alain were from other cities, and lived in a rented room. They constantly did not have enough money, and there were times when they had to starve. The happy moments, when they received a scholarship of $ 10 on the card, were celebrated on the same day, and then it was time to “tighten the belts” and live on what God would send.

Of course, this alignment motivated visiting students to look for ways to earn extra money. And in front of them, at arm's length, sat "light head" in the form of me. Which is also malleable and rarely refuses to help people.

I do not know if I described the situation correctly, but ultimately these gatherings in the pub, led to the creation of the first IT company in my career called SCS. The name was simply made up of the first letters of our last names. Our young company, represented by three founders, has torn competitors and the whole university apart for the next four years.

Ilon was a ROP. That is, the head of the sales department. Namely, it was his responsibility to find new customers for our outsourcing business. The sales channel were horizontally printed A4 leaflets, with a simple inscription: "Solving Programming Tasks." And down the phone is Ilona.

This kind of outdoor advertising was placed on every floor, where students who study programming might appear.

Additional, stronger in terms of customer loyalty, was sales channel through word of mouth.

The business model was simple. Either by recommendation or by announcement, a university student addressed us. I gave a description of the programming problem, which had to be solved by a certain date, and I solved it for the student price. Ilon was engaged in sales and received a percentage. Alain Delon less often participated in our business, but if you need to make a design, a picture or attract additional customers, it was always the way. With his charm, he brought us quite a lot of new people. I just had to handle this pipeline with a speed of 5-10 tasks per day. Deadlines were hard - no more than a week. And more often, you had to do it yesterday. Therefore, such circumstances quickly taught me to write programs in the "stream", without being distracted by every little thing like an earthquake with a magnitude of 5.9 or a major traffic accident outside the window.

In the hottest season, before the session, that is, in December and May, it seemed that I had tasks for the whole uni on my computer. Fortunately, most of them were of the same type, especially when a wholesaler addressed us as a representative of the whole group. Then it was possible to do 20 tasks, for example, in assembly language, changing only 2-3 lines. In this season, leads flowed like a river. The only thing we lacked was floppy disks. In 2003-2005, the poor students of our city, there was no such thing as throwing off via the Internet. Moreover, there were no guarantees of payment, which is now called the term escrow. Therefore, the SKS company, as a contractor, made an appointment at the university and we gave the diskette with the solution. Refund (from the English. Refund - the return of the payment at the request of the client) was almost not. Everyone was satisfied, and got their 4-5 points, if they could learn, what I added to the readme.txt file on the diskette. Although, a simple demo of a fully working program also often caused a wow effect for the teachers.

Price was ridiculous of course, but we took the amount. For an example, the usual home task cost $ 2-3. Course 10 $. The jackpot in the form of a program for the candidate's work fell out once, and it was as much as $ 20 for an application for a graduate student preparing for protection. In the hot season, this income can be multiplied by 100 customers, which in the end was more than the average salary in the city. We felt cool. Could afford the nightclubs and rip there to the fullest, and not choke cheburekom on the last penny.

In terms of my skills, they multiplied with each new student task. We began to receive applications from other faculties, with a different curriculum. Some undergraduates already used Java and XML in their entirety when we started C ++ / MFC. Someone needed an assembler, someone PHP. I learned a whole zoo of technologies, libraries, data storage formats and algorithms for myself when solving problems.

This universalism has remained with me to this day. In work on projects, a variety of technologies and platforms are also used. Now I can write software or an application for any platform, OS or device. The quality will of course be different, but for a business with which I mainly deal, the budget is usually important. And a person orchestra for them is a reduction in the budget exactly as many times as I can replace developers with my skills.

If we talk about the greatest benefit that I received from studying at the university, then it will not be a lecture on algorithms or philosophy. And not “learn to learn,” as it is fashionable to talk about universities. The first is that there will be people with whom friendships have remained after the training. And the second is the very same SCS firm that forged out of me a professional developer, with real and diverse orders.

I want to remember a phrase that is very suitable for this part of the story: A person becomes a programmer when other people start using his programs and pay money for it .

Thus, the SCS brand was widely known not only in student circles, but also among teachers. There was even a case when one of the teachers came to my home so that I could help him write a program for his scientific needs. He, in turn, helped me in his specialization. We both became so enthusiastic about our work that we both fell asleep at dawn. He's on the couch, and I'm on a chair in front of the computer. But they completed their tasks, and both were satisfied with each other’s work.

Twist of fate


Began 4th year university. The last course, at the end of which is awarded a bachelor's degree. There were practically no general educational disciplines, but there was only that connected with computers and networks. Now, sometimes I regret that I did not have time or showed no interest in the same electronics or internal networking. Now I am reading this out of necessity, but I am sure that this basic knowledge is necessary for any developer. On the other hand, one cannot know everything.

I ended up writing my C ++ compiler, which already knew how to check the code for errors according to the standard and generate assembly instructions. I dreamed that I was about to sell my compiler at $ 100 per license. Multiplied it by a thousand buyers and mentally
transferred to the Hammer, with bass from 50 Cent from the speakers and beauties in the back seat. What can you do in 19 years - such priorities. The chip of my self-compiler was that it gave errors in Russian, instead of not all understandable English from Visual C ++ and gcc. I saw this as a killer feature that no one in the world has yet invented. Then I think it makes no sense to tell. Before sales it did not come. However, it came to deep knowledge of the C ++ language, which has been feeding me so far.

In the fourth year I went to the university less and less often because I knew most of the program. And he didn’t know that, he decided with barter with a student who thought, for example, in electronics or probability theory. What we just did not invent then. And the inconspicuous headphones on the wire, which dictated the answer. And rushing out of the audience so that the guru in his specialty in 2 minutes will inscribe to you the solution of the entire exam. It was a great time.
At the same course, I began to think about the real work. With office, real commercial applications and a decent salary.

But at that time, in our city, it was possible to find work unless a programmer
“1C: Accounting”, which did not suit me at all. Although from hopelessness, I was ready for this already. At that time, my girlfriend pressed me so that we moved to live in a separate apartment.
And then to sleep, when the parents through the wall - not at all comme il faut. Yes, and I, have already fed up with student problems, and I wanted something more.

Trouble came from no waiting. I thought of giving an announcement on mail.ru that I was looking for a job with a salary of $ 300 for a C ++ / Java / Delphi programmer position. This is in the 2006th year. To which I was basically answered with something in the spirit: “Maybe you should write to Bill Gates with such requests for salary?”. It upset me, but among the heaps of such answers, there was a man who led me into freelancing. It was the only opportunity in our poor Las Vegas to earn good money through what I could do.

So studying at the university, smoothly flowed into work on the freelance exchange. Closing the topic of the university, we can say the following: I did not go to the 5th course. There was one programming and such a thing as “free visit”, which I used at 146%.

The only thing that needed to be done was to defend a specialist diploma. What I did with success, with the help of my friends. It is worth saying that by this course I had already moved from my parents to a rented apartment and bought a new car. So began my career as a professional developer.

The following chapters will be devoted to individual projects, the most fierce feils and the most inadequate customers. Career in freelancing from $ 5 to $ 40 per hour, starting my startup, how I was banned on the Upwork freelance exchange, and like from freelancing I went to team leads to the second largest oil company in the world. How to go back to the remote, after the office and a startup, and how to solve internal problems with socialization and bad habits.

Part 4. Junior. Freelance entry >>

Source: https://habr.com/ru/post/449842/


All Articles