How to Get Your First Job. Hello everyone! My name is Vlad and I have been in IT for about seven years.
During this time, I saw many companies from the inside, went through dozens of interviews, studied our and Western career specifics and mentality.
When looking for a first job, we are faced with the problem of chicken and eggs, because, as you know, people with experience are required everywhere, and experience can be gained at work. This contradiction can only be resolved by creating conditions under which it will be profitable for employers to hire you.
What is the employer’s benefit? In hiring an underappreciated person with a good background: theoretical, practical in another area, linguistic, motivational, intellectual.
It is to find underrated talent and drop out all others that employers run IT courses / internships / programs. They invest a conditional thousand dollars in a person in order to earn much more on him over time. In addition, a mature specialist is difficult to retrain, and he will resist, and a beginner can be trained for himself. An investment in an intern can pay off very well in a couple of years.
How the employee’s price is formed
Intellectual labor has no cost. The price is determined solely by the market and employees’ awareness of it.
Factors affecting the price of a person in the labor market:
- public statistics;
- communication with friends / acquaintances / colleagues;
- own experience of trading with employers;
- minimum human needs;
- perhaps an experiment in groping the market – trying to sell oneself at an overpriced price;
- tax burden in the region;
- In general, in the labor market, the job seeker can either offer his own price or agree to the price set by the employer. For beginners, a more frequent case is when they are offered some kind of price, due to the fact that Supply> Demand.
Actually, the trends in these prices create statistics. If Demand> Supply in the market, each new deal (hire) moves the statistics up. If Supply> Demand, each trade moves the statistics down. It is very consonant with the principles of stock trading, only there is more chaos here.
For example, according to statistics, the price of junior labor is lower than other categories, because there are more people who want to work in IT than jobs. Prices are correlated within a closed ecosystem (exchange), in this case, a city.
Accordingly, the next level that can fluctuate the price in the market is a pump / dump (artificial increase / decrease in the price) of assets through the pumping of information in the media, persuading people to lower or increase their prices. For example, Vasya read on the Web that the average salary of a junior is $ 1000, and he gets $ 400. Vasya went to ask for more and look for a vacancy for $ 1000.
I described the general trends in the pricing of assets (people), but what asset does the employer want to buy? Of course underestimated! If, when choosing a very experienced specialist, the question of price is often in the last resort, within a reasonable framework, because a person is taken not for margin, but for closing risks, then a newcomer is needed precisely for the margin and as long as possible.
First job search algorithm
The IT labor market as a whole is somewhat different from other markets:
- A very large presence of job seekers and companies on the Internet.
- Very fast dissemination of information about negative and positive events.
- In many specializations, demand exceeds supply, on the basis of which companies adjust their HR policies and ways of attracting / motivating employees.
- There is practically no nepotism, all roads are open to you, even without specialized education, if only you could do the job normally.
- Too fast growth of salaries when compared with other spheres or even with IT in the West.
- Salaries are significantly higher than the average salaries in the region.
In general, I see an approximate algorithm for hiring an IT company as follows (you can abstract from IT and apply it to any area where: the ability to bring results is more important than formalities, the toolkit is available to everyone for practice and there is open access to training materials):
Understand what areas of work are
How to choose a direction without experience in IT? I think you can search for something similar to what you have already done. For example, move from the position of a sales manager to the position of IT sales or from a project manager to retrain into an IT manager.
If you just graduated from university and still have no experience, figure out how the software development process works, and, perhaps, you will like something. But keep in mind that in small companies you may well be offered mixed positions. For example, you will perform the duties of a business analyst and project manager, or a tester and system administrator. This is a completely normal practice.
Choice of specialization
This point is most relevant for developers, as there are many technologies. Here we have a double-edged sword. By choosing the most popular technology, you are competing with more people. Choosing a less popular one reduces your chances of finding a job. You can try to compare statistics for Djinni by putting filters “your city, country”, “less than a year of experience” and the corresponding technology. Then look at the number of vacancies, such as hh.ru . The total number of vacancies can be an indirect indicator of the number of vacancies for newcomers, there is a certain correlation.
I can single out such factors in the choice of technology.
- Binding to the place of residence.
If you are tied to a certain city and do not want to move, find out:
- How many companies are using this technology in your city.
- How many companies offer internships and in-house courses on this technology.
- What is the average level of earnings for this technology in your region.
- It is necessary to communicate with representatives of this direction, who have been working for a long time and are guided in the industry.
If you are not tied to a place:
- In the capital, wages are always higher and the labor market is larger, that is, it will be easier to find a job.
- Perhaps in some city an internship / internship will be opened at the company – a great opportunity.
- There are options for remote practice / work.
- Personal interest. If you like to do a specific UI or work with bases, look for work in this direction.
- Build on your already developed strengths and skills. This can be a perfectly good base for moving in a new direction. For example, if you loved administering Linux at school, why not become DevOps?
- Ease of entry. It takes much less time to understand technologies like HTML, CSS, WordPress than learning Java or C # with all the frameworks. However, the earning ceiling will not be so high, especially if you go to get your first internship as a freelance. But it can be an excellent entry point for further development.
- The ability to find your first job remotely. If you have a portfolio on GitHub, you know English, no one bothers you to write to any web studio or IT company in the world and offer your services. But remote workers without significant experience are more likely to work with HTML, PHP, CMS than with languages sharpened for Enterprise (industrial development of corporate solutions) – C # or Java. Once I helped a friend with minimal PHP experience to find a job in a Malaysian web studio at a good rate, but he overestimated his strengths, and they didn’t work out.
Understand what skills are needed
A fairly obvious and at the same time very non-obvious point.
For example, you want to become a mobile app developer. You need to understand what the development of a mobile application consists of, what languages are used, what technologies are, what are outdated, what are required in the labor market. It is necessary to understand this so that the result of the first phase of training is a normal working mobile application that does something simple. A person with knowledge of the topic can help you here.
The very first criterion for success in programming is implementation in accordance with the TOR (terms of reference), but it often happens that there is a second criterion – a more successful TOR, drawn up in the process. But it is already experienced specialists who can question the technical specification in order to prevent global client mistakes.
Accordingly, to learn how to build an application, you need to:
- Learn basic syntax, IDE, framework methods.
- Find ready-made applications, find out why they are built this way, make your own according to the model.
- Doing this several times in several configurations to learn to see potential problems and inconsistencies is already an experience.
Actually, programming is the process of reducing unknown problems to known ones. In this it is similar to mathematics. We know the methods of the libraries and the syntax, but we don’t know exactly how the program will initially look. But we deduce it.
It’s easier with development in this regard. What should business analysts or QA do? Likewise, to find out what artifacts the business analyst consumes at the entrance, what he produces as a result, and what is the criterion for the success of the work. For example, at the entrance – this is information found in the course of communication with a customer who has tasks that are solved by means of IT. The result is to describe the behavior of a certain system: functional and non-functional requirements, draw layouts that solve the client’s problem.
Success criteria: availability and comprehensibility for developers, completeness of the description of behavior (specification) and, as a consequence, the solution of the client’s problem. There are also additional ones: the success of the chosen solutions in terms of saving the customer’s budgets, but this is already the next level.
Actually, you need literature on how to identify a client’s need, schematize (for example, IDEF0), organize the UI, write requirements.
Understanding what the work process consists of, what input and output data, you will at a basic level understand what the work in the chosen direction consists of, you will see the big picture and understand where you are going. This will help keep you motivated and focused on learning. And the easiest way to deal with this issue is by communicating with people who already have experience.
If you start learning from the very basics, you might be better off taking courses. As I wrote in my article on development in .NET, I recommend courses for 3-6 months, with constant contact with experts, feedback. Three-day courses will not give you anything, but only disappoint.
Another way is to find a mentor among friends. But keep the main rule: do not impose questions every five minutes, write down the questions and ask them at the end of the week in batches. I am more than sure that half of them will disappear by the end of the week. Plus, if you’ve been googling for over an hour and haven’t found anything, it’s likely you have googled incorrectly. But there are really, at first glance, non-obvious points that a person with experience will explain to you quickly and clearly.
The best way to learn how to do something is to try to do it at any cost.
If you are studying to be a developer, start by implementing simple programs such as snake, Tetris, chess, in the language you are learning. Right off the bat, you have questions about data structures and OOP, and those are good questions.
But the employer will be interested in you if you can implement the minimum working product in your specialization. Try to search the Internet for test items in different companies. I think this kind of crafts will be best. Search Google for “test item <insert your technology name>”. Also, don’t forget to upload them to GitHub! But let’s talk about this below.
Entry points to the first job(How to Get Your First Job)
- Freelance exchanges.
- Helping friends, for example, to create a website for a furniture store for my sister’s husband.
- Freelancers you know can give you their simple order for little money or for free, but on the condition that they point out your mistakes and give you feedback.
- Participation in any university programs that help to get a job. Talk to people from the pulpit, maybe they will give you a hint.
- Startups or just personal projects of people who are already working somewhere. There are no big budgets, but the requirements for code and knowledge are minimal there – if only it works.
- Courses for IT companies, after which employment is possible.
- IT companies recruiting people for paid / unpaid internships.
- Remote, possibly even initially unpaid work.
- Entering a related specialization to gain experience. For example, go to manual QA to go to Automation.
- The case is quite rare, but if you are well versed in some area and can make money by solving someone’s problem in your subject area using IT tools. In the worst case, this is an experience that will help in the future, in the best case, money.
The main rule for you is: Better a bad job now than a good one never . Any development experience for a customer is valued much more than your personal crafts or theoretical knowledge.
At the start, it is very important to let everyone know about you. Perhaps even a chance will help you, and you will be noticed.
- Complete social profiles and clearly state what you are looking for:
- LinkedIn – in the status you can write “looking for a job”, describe what courses you took, where you studied, what job you are looking for.
- Facebook – add to as many groups as possible related to your specialization, track messages about any opportunities to participate in someone’s project or internship.
- It will not be superfluous to upload your resume or look for vacancies on freelance exchanges.
- Be sure to create a profile on GitHub with your crafts.
- Create a profile on multiple message boards. Put the amount not very large or generally symbolic, you can focus on those that are. Be sure to add a link to GitHub, it will set you apart from the rest.
- Make friends with recruiters, add everyone in a row on LinkedIn, they will still come in handy for you.
- Subscribe to recruiting Facebook groups.
- After you have mastered the chosen technology in basic terms, contact recruiters of local companies and send them CVs, ask about opportunities for yourself. For example, the company where I work has an internship, as well as various offline schools – QA, .NET, algorithms in different locations. This is a great place to start.
- Engage in networking, or, in a simple way, sneak into the crowd. Go to all free events, meet people, ask for advice. With the advice of experienced people, you will probably find someone who will help you much faster. If you’re on the freelance path, meet more experienced freelancers and offer your services.
- Learn what others do not know. For example, one company in Dnipro recruits interns, but does not publish this information anywhere. Knowing this, I advised a friend to try there, and they took him.
- You can use the services of career coaching. In Russia, there are companies that help to relearn switches (those who want to change their jobs to IT).
- Find people in your university who are somehow connected with IT companies. Ask for advice or how you can get them to work.
- Keep an eye on job sites. There, it happens, there are vacancies for people with no experience. Even if the vacancy requires minimal experience, you can always talk, because the vacancy is written for the ideal candidate, and they will take the one who is better than others or just liked. Or you may be advised to someone else. In any case, you never know in advance what to expect from communication and how it will help in the future.
- Write a good resume. It is considered good when it tells the person who hires you how you can be of help and why he should hire you. From the point of view of design, these should be attention-grabbing semantic blocks with squeezing out information about you as a specialist – concisely, to the point, without lies.
Cover letter and CV are also popular in the West. The difference between a resume and a CV is that a CV is a detailed description of what you did, your experience, skills, education, etc. summary – a short summary of one page. Cover letter – in fact, a letter explaining the motivation to work for a particular employer. In our culture, I think one resume will be enough, but it is advisable for beginners to approach this more thoroughly. You can write a cover letter – indicate exactly why you want to work for a particular employer. Of the hundreds of resumes that recruiters receive for a junior job, yours might be the one to get accustomed to thanks to the cover letter.
Also, feel free to write follow-ups – letters that remind you of you.
I will say right away – do not expect to be hired. And don’t be discouraged by the results. Be prepared for rejections – they will dispel your illusions about yourself and the market. In any case, during the interview, you will be able to:
- Ask for recommendations – literature and stuff.
- Find out a couple of interesting answers to technology questions.
- Show yourself to the company. You may be told to come back in a couple of months when you learn this and that. And it will be very good.
Agree to your first job on any terms, this is your ticket to development. Studying at home for months, you will not be able to appreciate the depth of your skills, knowledge and get real experience. But starting to work almost for free and at the same time developing is a much faster way.
Perhaps this is appropriate in the West, but in our reality, a certain cargo cult has formed around HR recruitment and interviewing processes. HR asks uncomfortable questions, the job seeker answers them uncomfortably, and everyone seems to have done their job.
Often at interviews, they ask questions about which many jokes have been invented:
– Where do you see yourself in five years?
I think you need to develop a personal system and understand where you really see yourself in five years. If you say that the history of labor relations with the company you are interviewing can last as long as five years in the case of hiring, if your desires coincide with the capabilities of the company, that will be fine for everyone.
– Why do you want to work in our company?
I think your answer is “because this is a great opportunity to start.” If the company has any achievements, you can tell about them. This will reinforce faith in your future loyalty.
– Describe your strengths?
Think back to your successful work and tell me why it was done. So much for your strengths.
A little about hiring, not just for beginners
Interviewers often ask about a person’s priorities at work, what is important to him. In Western culture, the answer “money” is not entirely acceptable, because in any profession, if you are a good specialist, your basic needs will be qualitatively covered, IT is not super profitable there compared to other professions. In our reality, everything is a little different.
Agree, participation in a revolutionary project, when the toilet is broken in the office, fellow morons and the salary is delayed for a month, is not very inspiring. We work, after all, for the sake of money. Imagine: you would do something interesting every day, develop, but thank you? This may be cool when you’re in school, but for an adult, the basis of a business relationship with an employer is always money. At the same time, an excessive obsession with money also harms stability. If you change jobs frequently, you are unlikely to be among the next market leaders. Consider it too risky to hire you due to frequent job changes.
Your priorities may differ from mine, and that’s okay. Employers can be conditionally divided into two camps: those who are ready to accept honest answers and recognize money as motivation; and those who can put on you the stigma of “monetary motivation” and not consider at all. Therefore, before entering the company, I would recommend finding out about it from the inside.
I’ll tell you how it works in an outsourcing company. In the product, things can be a little different due to the business model itself.
Employers try to avoid the issue of money in the corporate culture, forbid employees to talk about salaries. There is a reasonable grain in this: to pay everyone and much will not work, and if people know each other’s salaries, disputes about injustice, etc., are quite possible.
Also, they often start from the wishes of the candidate, because every vacancy has a ceiling. There are two options: the candidate names the amount higher or lower.
In the first case, he will most likely be refused. After all, to give a person a carrot less than the one he presented is to deprive him of motivation, and successful cooperation will not work. Sometimes they can throw a hundred or two on top, if it is within the budget, – this will provide motivation and more effective work with small operating losses for the company. It’s the same with bonuses: companies pay bonuses by rewarding a person locally to neutralize the impulse to demand higher compensation.
If the candidate named the amount below, he will be added to the pool of active candidates, from which the best one will be selected in terms of price-quality ratio or according to some subjective criteria.
If the candidate initially knows the ceiling, he will want to ask for more than originally planned. And this is all the extra operating costs, because the hiring system is part of the cost optimization business, so the ceiling is usually hidden.
Instead of a conclusion: how I started
I knew that I wanted to go to IT while still in school, so I entered applied mathematics. He started freelancing in the second year of the university – PHP / HTML / CSS / CMS, at the end of the third year he got into Agile practice in a local outsourcing company in the .NET direction. Then we were hired by Junami, and our project lasted for several months. With this experience, it was much easier for me to find my next job. Although initially at the university I looked more towards Flex / Java, but due to such luck I decided to use this experience to develop towards .NET.