I have been developing software as the lead programmer and designer since the late 90s. Freelance has never been my main source of income. But in 2010, I began to seriously engage in freelancing as a side activity that brings substantial income (in a few months I reached sales of about $ 5k per month from freelance contracts with almost zero costs for executing contracts, except for my time). I later moved to North America, but freelancing continues to be an important side business for me. In addition, in my work, I constantly communicate with freelancers, including professional full-time freelancers from North America.
In this article, I would like to share my experience at sites like elance.com with colleagues from the former USSR and give specific recommendations on entering the market, positioning services, and competition with dumping from South Asia, as well as providing education in general professional training.
1. Prerequisites
English is at least written, able to read and write without mistakes. Without this, nothing will make sense.
Freelance is not a remote job. To successfully engage in freelancing, you need to sell your services. It is best to prepare for this by reading an explanatory book on the sale of complex solutions (this is not the same as the sale of the finished product). I recommend SPIN selling (in the Russian translation
“Sales by the SPIN method” , or
“SPIN sales technology” ) from
Niel Rackham , and I will refer to this book.
2. Basic skills, or customer service
You are going to sell your services, which means that you will need to work with a client. Quite a lot of technical specialists do not know how to work with clients and do not want to, this is considered a waste of time. In freelancing, it is usually helpful to acquire and use basic customer skills. You can start working on this long before the start of a freelance career.
')
- Get yourself a Google Calendar and be sure to mark ALL appointments there. Skipping meetings and being late is impolite;
- Before proposing a solution, try to understand what the client’s problem is (see also SPIN Selling);
- do not say “yes” out of courtesy, this is a problem of immigrants from South Asia. If something is problematic, say no or you can try.
- always (!) pronounce the proposed solution in detail. After talking with the client on the phone, send a follow-up email with a brief summary of the conversation and a request to confirm whether everyone understands everything correctly. Do not be afraid to appear stupid or boring - be afraid to waste time because someone misunderstood something;
- train the names memory;
- It is useful to plan follow-up calls, that is, to ask after a while whether everything is good for the customer and how you can help him (this can help you get a new contract without getting off the ground, but it is much more important to show professionalism - in this case the customer will rather remember you when he has a new job);
- never fade for a few weeks, it makes people nervous. Get into the habit of reporting weekly progress on a task. On freelance sites, this is usually required automatically, but even if not required, it is helpful to keep the rhythm;
- It is very likely that you will be performing several tasks in parallel in a tight time frame, or multitasking under pressure. Under pressure means that you have little time, and not that the boss stands above you and drips on your brains. Planning work or time management is a huge problem for absolutely everyone, including me. The usual way out is to delegate part of the work to someone else. In the case of freelancing, remember that quite often you are not the only employee working on a project.
- Build a clear framework that you will do that you will not.
additionally
- Do not get rid of the accent, Russian or German accent in STEM - this is rather a plus. The main thing is that you can communicate with the client without any problems;
- but if your name is complex, take yourself an international name, or a nickname. This does not have to be the English name, for example, the alias Kim is often used (again, Kim = Korean, which is a stereotype plus).
3. Some features of work through freelance sites
- In most cases, you will have the choice of delivering services "by the hour", or for a fixed amount. In my experience in the absolute majority of cases, customers are not willing to pay for the services of an offshore programmer more than $ 50 per hour. Working under contracts for a fixed amount you have the opportunity to get a higher hourly rate, but you also take the risk.
- In some cases, the customer will want to sign a non-disclosure document, or NDA. You shouldn’t be afraid of this, but also to brave “in the grave I saw these papers” too. The normal conditions in the NDA are a year or two non-disclosure after the completion of the contract and an explicit mention that the NDA does not apply to the knowledge that the contractor already had at the time of the conclusion of the contract. Cases of litigation on the NDA with freelancers are unknown to me.
- At Elance and Freelancer, the customer can, but does not have to, make a deposit deposit (escrow) before the project starts. Insist that the money was in escrow. The easiest thing to do is simply to write - “place the money and I will start working”. After debugging is complete on your part, when you are sure that the product works, you place the product (usually it includes the source code) on the website and you can immediately mark the project as completed and request release funds. In this case, at Elance, you automatically receive money in 30 days if the customer does not start the arbitration procedure. Cases where the customer went to arbitration (it usually costs money) with a more or less satisfactory quality of order fulfillment are unknown to me.
Do not confuse escrow with prepay. Prepayment is not required ever, on a number of sites it is expressly prohibited.
I prefer to negotiate with the customer on the placement of a full (100%) escrow before the project starts and also receive 100% upon completion of the project, without interim payments (milestones) - this approach often reduces hassle. Milestones certainly make sense on contracts> $ 10K, but such contracts are extremely rare - customers usually manage risks and simply beat large contracts into smaller ones before offering them to freelancers, even those with whom they work all the time. My average contract (customer invoice) is one thousand to one and a half thousand dollars; An order consisting of 3-5 consecutive contracts is not uncommon.
4. What to do? Or market behavior strategy
Strategy - this is how you are going to work against other people who provide their services on the market now. To sell a service, you do not need to be the best seller on the market or have the best offer. It must be better than other offers that the client could receive. To do this, you need to present yourself in a good light, immediately emphasize your strengths and, if possible, focus the client’s attention on these sides.
- Write your resume is very short . You should tell the client in the first two sentences why he should hire you.
At the same time write on a piece of paper in general everything that you know how to do. Then you will come back to this list again.
- Determine who your competitors are.
To do this, you can register at the sites in your area, go over there, look at both demand and supply, try to break into several projects at random, and then analyze what happened. So for example .
Remember - you are positioning your services against specific other people who are on the market right now . For example, you may quite often come across ads where targeted coders from Eastern Europe are required, or where no South Asian people clearly want to. In my area, Eastern Europe is a good brand, and a native of Eastern Europe has a competitive advantage over a native of South Asia. This may not be the case for you, but pay attention to what customers want and what competitors you have in particular projects you are interested in.
- Identify niches, services and price levels for yourself .
ABC positioning - you should always occupy a large market share. The offshore services market is huge, so you have to define narrow niches, take good positions and not be distracted by everything else.
How can you find your niche: when you have a billion-dollar business, concentrate on that business; when there is no sales, do not concentrate at all. What I did before entering freelancing did not have enough demand in the freelancing market, so I poked in different directions and found some profitable niches. This trial and error method took several months.
How to determine the desired level of prices for services? I can recommend this method: for a start, make a real alternative plan - estimate what maximum hourly rate you can get by doing what you are doing now, after six months - taking into account professional growth, promotion, etc. If you want to freelance in order to have a good side income, multiply what happened by two. That's what you want to get, doing freelancing - otherwise how are you going to discourage the investment of time and effort to promote and search for a niche?
- Now the fun part is how you are going to serve all this to customers.
First, determine what hourly rate you want to call customers . This is not the same rate for which you want to work; This is your positioning tool. The figure “I'm worth XX dollars per hour” will be in your profile, and based on this figure, potential clients will determine your market positioning and evaluate your qualifications. To sell your services as expensive as possible, you must set this rate high enough, but not very high. The high number in the profile helps to sell services for a high fixed price, but makes it difficult to sell watches.
If you provide premium services, do not be afraid to watch the maximum price of a competitor and multiply by two. For more details google “price positioning”, “value-based pricing”. By changing the price level, you move to another part of the market, where there will be other buyers. Will the demand for your services from these customers - except you, no one can find out. Try it!
It is important to remember that all this is determined relative to competitors - people who are present on this site here and now. Or at other sites where the customer may be. The composition of competitors is changing - your offer is changing. Constantly losing tenders to the same competitor - think about it, maybe a niche is not very good.
- Create sample templates for customers and customer service scenarios. Below is a specific analysis of the proposals from my practice.
- Exit strategy. What actually you want to achieve. If the goal is to get remote work in the USA, you need to filter customers and orders in one way; if the goal is a side job, to others.
5. Suggestions for strategy elements for developers from Eastern Europe
A bit of specifics. Try the following strategy elements.
- You are not from India-Pakistan. That is, position yourself in a higher price range than your competitors from India. If you offer very good services, do not be afraid to position yourself in a higher price range than competitors from the United States.
- Full-time freelancer. Other things being equal, the customer often chooses someone who does not have the usual daylight job, because people who work as freelancers are usually unreliable. In addition, positioning as a full-time freelancer, you can emphasize your professionalism.
- Reliability, or business model "sale guarantee". It is impossible to write in the resume or the sentence “I am reliable” - no one will believe you. Most sites have a rating where you can see reviews from previous customers. In addition, reliable freelancers usually provide a performance plan, and bargain for deadlines.
- Avoid hourly work, try to charge for the order.
- Avoid very small and very large tenders. Remember that the time of communication with the client - this is also the time that he does not pay. Minimize the time spent on selling your services!
- Remember that the best way to save on sales of services is to re-sell existing customers and sell on the recommendations of existing customers. Try to always get a repeat order from the client, but if he places a regular tender in your area, without contacting you before, cross it off from the list of regular customers.
6. How to check the strategy?
Congratulations, you now have a market strategy. It can be tested only in one way - by practice. The same strategy can work completely differently at different sites, so try it everywhere; or adapt it to specific sites. Sites also "compete" among themselves, that is, they are trying to avoid competition and work each in their own niche, and the conditions are different everywhere. For example, I did not work and do not work for ODesk at all, but I sell my services well at Elance.
Yes, and be prepared to go through this process several times. Everyone makes mistakes. Finding a niche can take weeks, months or years.
7. How to do? or tactics tips
- Try to submit your application for an interesting order very early. Better in the first 15 minutes.
It’s pretty easy to understand whether an experienced customer or not. Most customers are not very experienced.
With an inexperienced customer it is extremely important to be among the first 2-3 people who will give an offer. It is best to be the very first, because in this case you can form his expectations. In tenders, where there are already hundreds of applications, it is better not to get involved at all, few will read them.
An entire chapter of Niel Rackham SPIN Selling is devoted to the topic of work with the customer and the importance of the first contact.
- Try to find an agent.
Most customers come to solve problems in their companies. Finding a customer who is willing to give repeat orders, you break the bank. However, a much bigger sum, especially for a novice freelancer, can be frustrated by finding a person who is looking for orders for his clients. That is a professional agent. Such people quite often have had bad experience with offshore programmers from South Asia in the past, appreciate Eastern Europeans for reliability, predictability, quality of work and can sell these services to end customers.
- Try a model of printer manufacturers (printer for a penny, expensive consumables). The first contract for relatively little money and expensive service. This is a good model for small companies that can not put a lot of money into the development, but which will hire you if their product goes uphill. It is important to select partners with whom it is worth working and not getting involved in everything.
- Discounts. Let's go discounts! It is much easier to give a 50% discount on the price, which is twice the average for the market. Model successful companies - keep a high base price at the expense of quality. If you want to get a contract, you can always give a discount if the base price allows it. The alternative is to compete with Asia at a base price.
If you give a discount, immediately request an increase in the time of the order, even if you do not need this increase in time. In this case, the client sees that the original high price was justified. In extreme cases, make a discount "just like that," out of respect for the client.
- Do not give a price right away. See again Niel Rackham.
- There is nothing wrong with solving the problem of the initial set of rating by fulfilling orders for $ 5. But you have to understand that in this case you are obviously working at a loss and your goal is to gain a rating. Try not to dump unnecessarily. By the way, in order to get the first rating on Elance, I once asked a friend to send me a small contract payment there.
- If you want to create a sustainable business, try to never take orders to pay current bills. When freelancing becomes the only source of income without a financial pillow, people often make a bunch of annoying mistakes, starting with deterioration.
- Concentrate primarily on the quality of customer service, and secondly on the quality of the services provided. You do not need your services to be the best on the market. You need your customers to be comfortable with you.
8. Personal experience: using a market defect to create a niche, positioning as a premium provider, a tactical method of raising rates for price positioning
Avoid competition. All the art of positioning is this. Avoid competition by all means. Sometimes in order to raise or launch sales, it is necessary to raise the price, and not to lower it. Here is my story from the beginning of the 10s, when I lived in Eastern Europe and worked at a nominal rate of $ 50 per hour:
The site design contained a logical error: they had the notion of a “medium-sized project”, while the client was not told the size of the possible rate, and it was limited to below, $ 500.
A typical scenario for receiving an order with a high premium:
- the client placed an order for something not very elementary, but also not very advanced (for example, a complex vba template or a plug-in to the office, usually several days of work for an average professional), describing it as a “medium-sized project”, not knowing about the minimum rate of 500, and receives 100 applications from the Indians for $ 500 (less can not).
- after that I set the price from 900 to 1900 or even significantly higher purely by price positioning, based on the assessment of this particular client, and the client basically chose me based on the positioning as a premium quality provider. (Of course, the sales were delivered in the appropriate way, that is, before setting the price, I spoke with the client and made up a competent offer for him).
As an option, I could in some cases be able to bet 790, because it’s not much different from 500 if the client is very price-oriented (intermediary) - the difference in 290 in this case is the absence of risk that any intermediary is happy to pay.
That is, in this case, "break out of the crowd" - is to put the price above the rest. My effective hourly rate on such projects usually hung out between $ 100 and $ 200 per hour, and in this niche I earned several tens of thousands of dollars a year with minimal effort on my part.
9. Personal experience: the structure of the proposal to the client, a tactical method of placing a request for an increase in the project budget when positioning as a professional performer
I will give a detailed analysis of specific examples from my practice: how to make a good offer to a client.
A bit of theory: The cap should be short, this is an elevator pitch. Imagine that you are traveling in an elevator with a potential customer, and you only have time before opening the elevator doors. 15 seconds per cap. If the header does not interest the client, he will not proceed to the next section. Therefore, mention only what is relevant to the case. Do not try to impress a client with a long list of regalia - instead, add at the end Please see my profile. Also try to avoid the problem of overqualification.
After the cap, go directly to the details of the project. I usually ask a few questions about the SPIN methodology. If the tender does not contain any information on which to ask questions, I usually ignore such a tender, or say that I will be happy to discuss the details of the project. In some cases, I can immediately (!) Send a prototype solution, not necessarily a working one.
The last paragraph is an invitation to discuss the details.
Do not forget about the design of the letter, including polite professional momentum; Take a business writing course if necessary.
Example 1:
The simple task of integration, the client invited specific artists. 2 applications from India and Pakistan, one from Australia, one from Eastern Europe (mine), my price was slightly higher than the price of the performer from Australia. I place emphasis on high technical qualification as a programmer-integrator.
I am a Microsoft Certified Professional developer with over 15 years of experience in software development. I’m where I’m one of the YYY providers / have I’ve been doing this.
If you use ASP.NET. Is it so? ZZZ exposes are very simple. I wonder if you can use ASP.NET. Are you interested in ZZZ?
Comment: the cap should be short, but MCPD and 15 years of experience are suitable for almost all situations, so I always start with them. I only list my degrees and diplomas when it is a plus for this project (see examples below), in this case they were obviously not needed. At the time of this proposal, my rating was low, I referred to the confirmation of my high qualification in a different way. The client did not mention the platform explicitly, although it was more or less obvious, but I clarified anyway. I asked clarifying questions on the size of the project. There were not too many questions - the client answered me, I asked the following questions and got a contract as a result. For questions on asking questions, see SPIN.
Example 2:
The client requested a niche (for me) solution. A specific budget was announced. The client gave a detailed technical task, and explicitly requested the entire source code. I emphasize that I specialize in solutions that are standard for me and relatively simple, i.e. I offer the client to pay me a premium for the lack of risk.
I am a Microsoft Certified Professional developer with over 15 years of experience. I have created XXX of any flavor, including solutions for companies like (...). My solution in this area won ZZZ award in YYYY.
For your budget, I will implement it with support for (....). The solution will be packaged as a single EXE file (for distribution via individual downloads) and MSI file (for distribution via GPO).
I will also provide consultations on its use.
It’s not a problem. Source code for my solution will be provided.
I have demonstrated high competence in my niche, attention to details and wishes of the customer, as well as respect for the terms of licensing and intellectual property of third parties; I warned in advance about the licensing features of the proposed solution (when using third-party components, always describe in detail in your proposal the conditions of their use). In this case, I received the contract without further questions and still receive orders from this client.
Example 3:
Embed a cryptographic algorithm in an existing product, the algorithm is not explicitly specified, a relatively small budget is requested. I focus on high qualification as an engineer who is able to develop a high-quality complex solution (because otherwise the client will buy the services of a low-cost programmer from South Asia who were actually requested initially).
I am a Microsoft Certified Professional developer of a degree in Applied Mathematics. I have implemented cryptography algorithms like XXX.
According to the XXX suite, because of ...
Are you flexible on budget? I am not quite comfortable with this type of job. However, I am quite comfortable with splitting up the research phase. After the completion of the research phase, including the proof-of-concept client-side implementation. At that moment
.
I want to analyze this case in more detail.In the first paragraph (elevator pitch), I indicate my degree relevant to the project. Please note that I do not indicate the university, because outside of the ex-USSR he does not speak to anyone about anything. In other circumstances, it would be possible to indicate one of the top schools of ex-USSR, but in this case I found it unimportant. Experience in cryptography, to which I refer, took place during my training. In some such cases, I referred to my experience gained in the performance of my thesis. I do not specify degrees and awards not related to this project.
In the second paragraph, I demonstrate that I studied the client's documentation and made a preliminary assessment of his situation, and I give him a freebie - a free expert recommendation on the use of a particular library. The client could receive the same free recommendation on the profile Q / A site.
In the third paragraph I turn to questions and immediately ask a question about the budget. In this case, the budget was clearly less than what I would like to take from the customer (it was increased during the negotiations and I received this project), and I did not want to work in the requested budget, so in this case I did not lose anything. Usually you should not go on to discuss the budget to clarify the details.
But in this case, I focus on the budget, leading the client to the idea that I cannot work for the proposed budget and advise you to split the project into two phases, and in the first phase create an SDD. This is a fairly universal technique that allows you to dramatically reduce the risks for the freelancer and the customer, as well as increase the cost of the project. See the SDD templates in Google, there are quite a few of them, and they are different.
The point is that you undertake for some fixed cost that does not burden the customer very much (from Eastern Europe I took about a thousand dollars per day, but I requested at least three times as much time not to be in a hurry and create the illusion of a low hourly rate ) conduct research, find the necessary resources, make a proof of concept and find out how much real development and / or integration will cost.The financial model is very favorable for the contractor - the cost of the SDD phase is added to the development phase itself (that is, it always goes on top of the initially announced budget), since this document allows you and your customer to clearly agree on the budget for the next phase; thus, the customer reduces their risk. In addition, having before you a document on 20 pages with diagrams and detailed phases of the project, as well as already experience with you, the customer will be much more ready to go on increasing the budget.Remember: by agreeing to SDD, which was not in the original task, the customer already knows that he is incurring additional costs in order to get a more professional service. Try not to spoil the impression.10. Summary
- Have patience and get ready to spend a lot of time to get the first order;
- Do not try to win contracts at the expense of the price, except for a short initial period when you may need to accumulate a rating (or have at least one completed order);
- Read a good book on sales (I recommend SPIN selling from Niel Rackham);
- Take a business writing course or use an English-speaking colleague / partner to reconcile offer patterns;
- Behave professionally;
- Know who your competitors are;
- Have a financial pillow.
Recommended reading: SPIN selling, Niel Rackham; also an educational program on business writing, strategic positioning, price positioning.