The beginning of a career and the first project. From a potential economist to a programmer

I started working as a developer a few months ago, before that I did not finish and did not study at technical universities. In fact, I was fond of programming from school: from the 6th grade I programmed in Turbo Pascal, took part in district and regional competitions (thanks to my computer science teacher, who was studying me) and was already sure that I would go to some IT -shnoy specialty.

But at the end of my studies at school, I realized that I was very interested in economics, and it was time for excruciating thoughts about where to go to study. I myself have been inquisitive since childhood, since I was not interested in and did not do it, and it was scary that the desire to know the economy would be just another desire to learn something new.

Contrary to the warnings of my parents and friends, I entered the University of Economics. It happened quite spontaneously, preparing to take physics before the month of April, and not English. I did and did not regret: economic theory, macroeconomics, microeconomics, finance - all of these subjects were very interesting. But, as it turned out, before the third course. Then the subjects began in my specialty “Economics and Enterprise Management”, which required more knowledge of legal norms and so on. I began to understand that, most likely, this is not mine. Transferred of his own free will to the correspondence department and decided to return to the roots: he took up self-education in the field of information technology.

I remembered what it was like: to think and look for approaches to solving a particular problem, then find a solution and get satisfaction from it. At first it was hard, because it was not clear where to start, but fortunately I already had a foundation from school. A familiar programmer advised me to look towards databases and Java. When I started studying, I realized that here it is, that is what interests me. While reading English-language books and resources, he pulled up English well. Among the books were:

  • Horstmann Volume One
  • Eckel
  • Butch
  • Head First Java
  • Head First Design Patterns
  • Effective Java
  • Java Concurrency in Practice

And in the network, of course, stackoverflow , JavaTalks , coderanch , habrahabr and many other resources. I grabbed quite quickly, absorbed with greed and was pleased with it.

I was very afraid of the code: how do I understand that something is wrong, who will say it? This self-study lasted about a year and a half. He wrote small programs to consolidate knowledge.

Later, I began to look towards enterprise development. The first thing I started reading on this topic is Head First Servlets and JSP. I wrote a small web application with tables, selection, search, etc. Then I thought it was time to look for work. It was morally difficult to start the search: I don’t have a piece of paper that I studied somewhere. Having overcome this feeling, I started sending out resumes. True, in a couple of companies there was no answer. I decided not to worry, put my resume on one site (they say, maybe lucky) and continue training.

The day after the resume was posted, they called me and invited me to an interview with one large company. I was very happy, but without excitement, of course, pleasant, it could not do. I passed the interview without any problems, everything is standard: databases, conversation in English about the programming language, questions, etc. I was received, it was a great happiness.

There was a trial period for two months: I was developing a web application with the same team of newcomers. They tried a lot on it: JDBC, Spring, Hibernate, Struts, GWT and more.

And recently, I'm on a real project. To be honest, I expected that "spaceships will plow the expanses of the universe." The project is internal for one very well-known IT company, but it’s just a quick code basket: JDBC DAO with 10,000-line business logic, a service level under EJB, all methods of which simply delegate a DAO call, of this kind:

public HashMap getSomething() {
		return fooDao.doJob();

stupid decisions, a bunch of if-blocks, which in a good way are replaced by polymorphism, huge methods for 500 lines and as a result an awful workflow.

Each new requirement is solved by adding a specific if-block to a definitely convenient place. All this is very sad, especially when I see how it can be refactored beautifully. But unfortunately, no one is going to do this yet: the project is already a couple of years old, we got it the way it is. But the fact remains: it becomes terribly difficult to maintain and expand, and it feels that it will be worse further.

Despite this, I realized that the work of the developer is mine, although I hope that not all projects are written in such a way that itching is rewritten.

Then I’m going to accumulate experience, gain new knowledge, I really want to get a fundamental education, I try to read more. I want to develop and become a Specialist. So far, the truth is complicated by the fact that I still have to study for six months at my university, and now the most difficult time is the last session, writing and defending a diploma. And, of course, no connection between my education and work. I hope all this quickly and successfully passes and after that I can plunge into IT with my head.

Actually, I am finishing the story and I want to tell those who are really interested in information technology, but who do not have a university in this field - go for it! If yours, it will immediately become clear. Just remember: money is not an incentive in choosing this profession. An incentive is your enthusiasm and desire to learn new things.

Also popular now: