What is development?
Are you sure that you know what “development” really means?What is development? || Development software || Android development || Software engineer || training and development
game developer || child development || business development || SHOW ALL ARTICLES ABOUT DEVELOPMENT
All companies in the article - invented by the original poster ... and have a direct bearing on reality.
- Do not tell me, which way should I go? - Said Alice.
- It depends on where you want to go, - said the Cheshire Cat
- Yes, me, in general, anyway ... - the beginning of Alice.
- Then it does not matter, and which way to go, - said the Cat.
- ... Only to come somewhere, explained Alice.
- Oh, there you will surely come, the main thing going for a long time and never collapse. "
L.Kerrol, "Alice in Wonderland"
Being poor is bad because it takes all your time. Willem de Koning
Do you work for a company that develops software programming. If it suits you - then this article is not for you. Or maybe you feel that everything seems to be good, but something is wrong, it is not clear - what next? You are at times effective, but the problem still the same as before, wages are not growing in line having high experience. There is a desire to change something. And you begin to consider options for further development. These options may not be immediately apparent. This article describes some of the possible development of the programmer and provides some examples of where each option is already realized. This is done in a very short, because the format does not permit to describe all the details.
On the scalability
I chose a measure of development - efficiency. I will mention the possible ways of scaling of different directions, which is the ability to radically increase its effectiveness. High efficiency, I think what type of problems are solved, it is desirable to use a minimum of resources. The successful application of scalability will inevitably impact on the amount of income - that is a good indicator of success.
Go to the managers
The most obvious scenario - try yourself as a manager. Become a manager and you understand why they say that the hardest thing in programming - is to work with people. For example, a certain Pete is not always easy to explain that if he is often asked what makes the code - this is not a reason to consider himself popular, and it is necessary to think that maybe he is the source of bydlokoda. First, for you it is something new, but eventually you realize that you can use the potential of not only your own, but the whole team. You begin to think more ambitiously, you know, it gives you new possibilities in solving problems and want to move in this direction, getting through the delegation of all the great opportunities for problem solving. You begin to climb higher and higher up the corporate ladder, more and more you understand how the company reach the CEO. What's next, how to scale? And at some point you realize that you yourself have the power to create a company (not once, but possible), and do it. So a company Mriya-Soft. Possible without the experience of a top manager to open his own company, if you have confidence in their abilities and knowledge. So a company Acvitas. Though of course one may never really take the opening of his company. All the same, is probably the only question is whether a man can make a willful decision whether or not to look for something new, and whether it was him? But if you still have decided on this path, it is better to think about work for a company that grows and develops, and you have the opportunity to get involved and get the same expertise. And a pronounced case of growth - is to open and develop the office of an existing company in your country or to take an active part. Thus was the Kiev office of the company Materialise. Another example is a relatively young company's office in Kiev, Oberon Media, you can find reviews of how it looked from the outside in the first half of 2009 - the first is not always beautiful and comfortable. Games in Vista and Windows 7 - it is their handiwork. Here it should be noted that not all executives are ready to create your company. For some reason, often when they are offered to think about the new direction, they run away and seek a new place - probably think that the idea of a new business direction occur when problems with the old. Another approach - it does not grow in the same company, but rather to change them often and pay attention to how companies make money. So there was SultanHolding. Moreover, it may not necessarily start with a programmer, perhaps even better with a tester or a support engineer. Non-obviousness is that the tester shall verify that the requirements of the task, the engineer to support the user understands the problem. How to develop - is involved in setting objectives, working with the product manager and gain experience in this activity. In the future, become a product manager himself. In a nutshell, the potential for growth in the producer task is usually higher than those who carry them out. Career devoted to the topic of a new project Stratoplan created by people who have achieved career heights in a relatively short time.
The way the manager is not suitable
You either believe that management is not for you, despite all its benefits, or you have already tried, what it is and for some reason, decided: "No, I do not want to, I would have something to poprogrammiroval." Plus, even to the same salary, and not particularly increased when you become a manager, and hemorrhoids were added. But on the ground still can not sit still. Although if you have not tried myself as a manager, you still need to be to try - just to experience all the gold. You will understand many of the "kinks managers" and you will return to the position of the engineer, will more effectively communicate with their bosses. And in fact this option to develop further technical - to understand what problem you are looking for, and look them in the company or companies. Talk, talk, talk, what you are looking for, but not silent. Work in the company can be combined with freelancing, though it is not easy due to lack of time ...
Here you can search for parallel opportunities to implement the one-time freelance projects. The most difficult thing is to start, because the exchange packed nonsense, serious projects in this dump is hard to find, and if they can find, then you have little chance of winning the tender. But in the beginning is always difficult, we must not be afraid - you can make a couple of projects for a penny for your portfolio, but with a non-portfolio to live on a lot easier. About freelancing a lot written on this site Kadrof.ru. Sooner or later, you go out on a permanent customer and get the same work as a programmer, but usually with a higher CP than in the office, and a flexible schedule. Over time you will be a large number of orders or because of the many small or one large customer. And if you're interested in scaling, you can start to organize a team to implement a large flow of orders. But first, there will need to think about paying teams their money or money of the customer. I would also like to mention the transfer of knowledge. If you are doing something quite rare, such as a guru in programming applications related to computer security, you can fearlessly share their experience with subordinates. There should not be wary of the customer's transition from you to the members of your team because you will know, not the team members. In general, if you are afraid to share their experience with you then they will not be shared. Over time, you'll lose ground. Although the transfer of knowledge can make individually.
Training and consultation
If you feel that you own a fairly popular and you want this information to share, then you it's time to consulting and training activities. So there was a club of Successful Managers Programmers. - Was first webinar, webinar later book, etc. This option is scaled to training center and / or consulting agency. The first experience in consulting and training available at the company where you work.
Your product or service
In parallel with the work or freelancing, you can start developing your product or service, usually - is an online service, in other words - start-up, start their own business. A startup can begin with the plans that he grew up and changed the world. Then you need to start with a search that is very much like the number of users from around the world. It should also be able to attract investors, thanks to the money and expertise are your plans can be realized. Related Resources: Denny's blog, StartupPoint, Startup Crash Test and evolving site GrowthUP. A startup can begin without the Napoleonic plans, at least in the beginning. Most likely it will be a repetition of something that exists, that has shown that it works for someone and brings incomparably greater income than wage work. This can be for example an online store, and then develop as the development of online shops. A can occur, and vice versa: to develop custom online stores, and then create your own. Over time you hire a razbotchikov and be primarily engaged in the business. This is how the online furniture store VSI-MEBLI.UA, some details can be found here. Combinations of two other options: you strongly believe in your idea, in constant growth, but do not expect this explosive growth, as is often the most successful to describe the start-ups in the world. So a company Terrasoft. And somewhere between these options is the origin of the companies and the Bolero Alvas.net - a relatively small companies that have found their niche. Plays an important role here the fact that the working programmer, you can quite easily make a "financial cushion" and burn the bridges that had an incentive to work. But this is the best way anyone dly. Someone develops his first company, and then stops working, "his uncle" - here the risks are minimal, but the development is slow because a lot of time it takes constant work. And someone throws a first job, and then begins to develop his own company - there are high risks, but you still can devote their time building his company. While in case of failure "for food," the programmer can always earn. And there is another option - you can spur reductions that contributed to the birth of the project Prom.ua, you can read how it was. It should be noted that when working freelance to find an idea for a startup easier than when working in the company. The company is usually organized everything so that you are far away from the end customer. While working freelance and a variety of customers closer. This ensures that there is a chance to see a greater number of issues of potential customers and the decision of one of them can serve as a basis for startup. Sometimes it also happens that you create a project as a hobby, and he suddenly becomes a success. So there were projects Snasti and flower bed.
Option bounty hunting can be implemented in the event that you are the best in solving the problems of some type, and better in tasks that no one except you do not know how to solve. Your goal - to position itself so that people turn to you only when other options have not, in this case, you dictate the terms and get 5-10 more than the initially planned to pay for that customer. But we must be prepared to tackle the problem and, more importantly, quickly, which is really very sophisticated. Usually, when you know this formulation of the problem, the first reaction: "That's impossible!". Here more likely in people who work with innovation and to some extent understand what a truly new. This is when, after a demonstration or obyasneeniya someone that you've done, people gasp in amazement!
Gain experience in another area
Perhaps you would like to do to change their domain. In this case, you can find a company based on the fact, for anyone developing software. For example, if you are interested in banking, you want to learn more, go through training on banking, you may want to work in EPAM Systems and Barclays Capital technology centre for Software Development and Support.
Complete change of scope of
It is also fairly common option when some of the money set aside for something no damages caused to the sphere of IT. For example, someone investing in deposits, and thus creates a relatively high "retirement." Someone builds restaurants. Someone ... this is not a topic of IT and much larger than the subject of this article.
A special place is occupied by science. Science can help extend the range of problems, the solution that you can count on. The task of organizing the project has its own specificity - you need to communicate not only with clients and your team, but also from scientists. And then to find that the scientist is able to teach it to your computer. So there was a project Viewdle, a founder of the company are described approach. And if you're the scientist, then your task is made easier because you do two roles at once, and to communicate with yourself is easier than with someone. The main thing is not to get into the swamp, because in science it is now very much, can not even see how you all have forgotten how to do anything worthwhile attention, but to be published in the pseudo-scientific journals ...
Combining different ways of
I tried to describe the main options for the development, but in reality there are a large number of combinations consisting of those options. For example, you can freelance and begin to develop your product, a developer working in the company and provide training and consultation in another company (do not forget about the NDA), to work and build a restaurant manager with the money, etc. Here you can already give free rein to fancy.
The reason for stopping the development of
Not all programmers are developing, even if they want to. What hinders the development of programmers? Typically the programmer mistakenly thinks he is doing well, if not 90% of them developed software, 80% - that's for sure! And, accordingly, in consequence, there is contempt for all other activities, except those developments. Probably every programmer who does not want to be a manager, still worth it to spend at least a year to more accurately understand their role. Then you follow to add that this feeling is even more pronounced for programmers who are engaged in research and participate in innovation and really come up with something new. If you are such a person, you just give yourself time to evaluate, try himself as a bounty-hunter-a. You either know what you are really very strong, and then really going to solve complex problems for the appropriate fee, or you do not succeed, and, at best, you will adequately assess its contribution to the common cause, at worst - will blame the fact that the world is unfair to you. A correct assessment of the current situation - it is a big plus if you want to develop.
Much of the article is the result of what I had to learn. But sometimes, as can be and very often, I can understand people not right. And if there is a contradiction with information received directly from its source, the latter believed to be accurate. Moreover, the creation of each company, the very small - it is a separate, long and interesting history which can not be described in this article, so the description may be quite primitive in mind the message format. Also, you can see that there was almost no mention of the big companies. Yes, it was intended - for them and so much has been written and I do not think I would have got to add something new. Yes, and some may seem unrealistic to the creation of such companies, so it was chosen more "mundane" description.
As a result, the overall picture emerges: if you want to grow, increasing the complexity of the tasks you and you're a technician, you will in any case need to look for complex problems, communicate with people, learn new subject areas, which is absolutely no technical skills. Some thoughts about this article can be found in "About Networking". Here I would like to repeat, the most difficult programming and software engineering - is people.