I found my first jobs on UpWork, where Robotics is quite niche field. Being a niche field there are not many jobs available (I'd estimate there are 2-3 a month that fit my skill set) but also there are not so many freelancers doing Robotics.
Starting on any freelancers platform you need to start building reputation, which can mean you will need to sell yourself well or do the first project for peanuts (my first one was converting some Python to C# that took me 8 days and I earned 10$). In the second project I earned about 2k$ and in further ones I was already earning more per hour then in my previous job.
My advice is anecdotal but if someone advertises "a simple project for ..." then they don't treat it very seriously and won't be willing to pay for quality. The clients willing to pay more for your services will also respect your time more and are usually much easier to communicate with.
Avoid fixed price contracts if you can unless you know exactly how to do the project and can predict any pitfalls. Charging by the hour/day/week/month is in my opinion least risky and if you encounter huge issues you are still paid to fix them.
Speaking of issues. Firstly make sure that you know the requirements clearly, before starting development make sure you understand all stakeholders. As you are developing the project communicate frequently with the client about any doubts to the client and make sure you are on the same page. If you see anything off - communicate this! The requirements will never be perfect and if you put yourself in the user's shoes you will be able to identify things your client missed and this way you will be bringing an extra value by solving problems before they even arise.
Sorry for the wall of text, hopefully you will find any of this useful. If you have any questions feel free to ask here or e-mail me (I hope my e-mail is in my profile).
Do you think your education matters? Do people want to see a masters/PhD or is gaining more experience the important thing for landings these sorts of jobs.
I have a master's degree and don't know if it affects anyone's decision about hiring me for a contract. My feeling is that the companies I work with now value my experience much more than my degree but personally I learned so much studying Mechatronics/Robotics that I'd highly recommend doing it if you are not experienced in Robotics and want to start working in the field.
For instance, food scientists
best of luck!
1) Choose a specific skillset that you want to use and only accept jobs in that skillset. For me that should have been React/Node projects (even this is too general, but much better than “web programmer”). People hire consultants for instant productivity, and the type of person that has so little experience working with technologists that they expect instant competence after you tell them “yeah I used Python for a personal project” probably won’t be a great client. Ultimately you’ll want to own a business problem, possibly combined with a technological skillset, but that’s something you can think about after you’ve set up a steady stream of work.
2) Use a “premium” recruiter or agency. Gun.io, Toptal, something like that. They don’t lock you in, you’re still free to find your own work, but they will save you SO much time and they’ll find SO much work that you wouldn’t have been able to find on your own. Use them to find projects in which you can hone the specific skillset you chose and make it more specific.
After a project or two you’ll have a feel for what’s out there and you can start tweaking your rate and how you market yourself. Also, consider reading Developer Hegemony to get a (pretty cynical) feel for the business side of things. Feel free to reach out if you want to chat further (email in profile).
I earn $180000/year, recently raised my rate to $280/h and working 40h/weeks. Feel I create way more value for my customers than my cost, so I started several small projects in parallell the last months to move away from consulting. Most of them was about a week of work and give about $10000/year with minimum maintenance.
Started building webpages, but figured out that this in itself don't solve a problem I can't fix with some sitebuilder (all about value). All my value creation in now in gathering data from different (API) sources into and databases and generating custom reports on this data. The most important skills I need is Python and SQL, stuff I did not know under 3 years ago.
For the $10000/year examples I make some prototypes, try to understand the business I try to sell to and calculate something I don't think they already easily know that will increase their revenue way more that my cost. Then I make the cold call (<3min), just to ask if I can send them an email with some analysis. They almost always get back the next day with an email or call back for more details or some adjustments.
Hope to go all into startup in a near future, only focusing on this. Love the feeling of solving real problems and see people willing to pay for it recurring <3
If you want to cut back on your consulting perhaps I can try to take some of the work off of you. I could work under you at half your price $140/h, so you could spend more time on your start-up and still be making money from your consulting and keep your clients. It makes sense for me as it would be a quick way for me to get into consulting and it seems like you already have the workflow, etc down.
Or perhaps you would want to work with someone on your startup. I have had a few successful start-ups over the years.
You can check my LinkedIn and my email is in my HN profile. Get in touch if you are interested!
2. In your first year aim for half of what you made the previous year. Take the best clients you can, but make sure you hit that or you'll stop. Don't take work that makes you feel icky.
3. Talk to people. Spend about 35% of your time doing it. Do work for free if you need to, but get someone talking one way or another or your pipeline will dry up.
4. By two years in you'll find a client that will make up over 50% of your billable. Do whatever it takes to make them happy. Even if you lose the client for reasons outside your control, make sure that the decision maker that brought you in feels like you did your best. They'll bring you in again, even if it isn't there.
* Say "no" to prospects that don't fit your practice/price.
* Avoid freelancing/matching sites.
* Don't bill hourly. Don't track hours.
* Be prepared for clients to be very late on payments.
* You can't stop selling when you hit capacity. Be intentional about smoothing your utilization out.
Probably you don't mean it in this way, but I found time tracking to be very very useful, even when not tracking with the purpose of invoicing for your time.
In Canada there are important federal tax credits (e.g., SR&ED) that work best if staff and contractors track hours in at least 4-hour chunks.
But if a client hopes to get tax credits back for your hours, that's another good reason to raise your rates!
Could you explain more?
If you stop selling (networking, outreach, etc.) when you're fully utilized now, you will impair your ability to stay utilized later. If you have a project that you expect to wind down in 90 days, communicate that to prospects without pushing them away.
For example, we overestimate what a start time of "now" means in business. Sometimes, it's "today." Other times, "now" means "right after I get back from vacation, roughly 3 weeks from now" or "this quarter." Depending on the client, contracts + background check and other on boarding can take weeks of (unpaid) calendar time.
I've seen people turn away work slated for a start date of "soon" because they were on a project for another few weeks. A better move would have been to let the client know the existing project was winding down but let's get the paperwork started now for a quick start later.
If you live in a major metropolitan area almost anywhere in the US, and your skillset is in tune with the market, you should be able to find some W2 or 1099 contract quite easily through local recruiters. Yeah they will take their cut, but you still should be able to negotiate close to market value. You will definitely get paid more than using something like Upwork.
I’ve been building up a curated list of local third party recruiters for years. I always engage with them when they reach out to me.
Even though they call the above “consulting”, it’s actually closer to just freelancing.
99% of the people who think they are doing consulting (me included) are not doing consulting. If you're getting paid to write software, you're not a consultant, you're a freelancer/service provider. Let those words shake you then read all the writing on daedtech.com to learn why and see if you disagree (you won't).
Based on what you're saying I'd expect that yearly base salary to be over 200k (based on what it was like in Austin years ago), would you mind sharing how you've found good and/or consistent clients which pay you at that rate? Is it mostly bigger companies? Smaller startups? Multiple contracts at a time?
The easiest way to signal that you don't want a staff-aug gig is to say "no" when you're offered a staff-aug gig. Advanced: counterpropose with a project proposal.
People overthink this stuff, I think.
The one important thing to know is that it's important to be "available"; even if you're not going to pick up the staff-aug gigs, it's probably best to entertain them (and, even more advanced: refer them out to other people), because you can only say "no" 1-2 times before people will stop asking you for anything.
I don't believe "expert consulting", as apart from "freelancing" or "contracting", is a real thing in our industry.
Many in this topic wrote about being a real consultant rather then a contractor in software industry. By that they mean, as I see, providing advice, recommendation to clients.
I know you are very experienced in this area, so you mean one cannot be a pure consultant in software?
That's by definition:
consult verb (used with object): to get information or advice from a person, book, etc. with special knowledge on a particular subject
That definition just proves his point. Or am I missing something?
How people use (in this case misuse) the term leads to confusion and the linked article (and the other related ones) starts with this fact as the baseline (we're in agreement) and goes into how/why software shops are doing it wrong/mislabeling themselves, and how you can stop doing that. It seems to be exactly what OP is looking for.
What's helped me in my freelancing/consulting journey more than anything else has been building one on one relationships (aka, networking). The more people you know who know what you do, the more opportunities you'll have come your way. Some call it Luck Surface Area.
Join a paid online community of other consultants. Go to meetups around your city. If someone wants to learn programming take them out for coffee. Go to networking events. Give talks in public. Anything that will introduce you to other humans. Then keep track of all of them in a CRM. Follow up with people and provide as much value to them as you can. Participate in Hacker News (this post is increasing the number of people you might meet!). Put it on your Github/Twitter/Website etc.
Ways I've gotten gigs lately:
* Person from my online freelancer community I'd talk with multiple times was working on a project and they needed help, brought me on, now I'm getting more work from that client.
* Someone from college I hadn't talked to in 8 years saw my LinkedIn profile and contacted me about a project for their company.
* Someone saw a comment on HN about my work and reached out to me.
* College student wanted advice on freelancing, I took them out for coffee, 3 months later "I decided not to freelance but I found a client, do you want them?"
* Sitting in a coworking space and person I met yesterday and told about my business says, "I'm getting a full time job, want this client?"
None of these have had to really come from direct "selling" and all of them came to me which in my experience makes it way better since they already want and trust you. I don't even feel like I'm all that good at promoting myself, but I have work because I talk to people.
Happy to chat about this further if you want, my email's in my profile. Best of luck in your consulting!
I quit my job a year ago to start doing freelance/contract work, I never directly looked for clients but just by having good relationships with my former employer, colleagues, and people I know in general, by October I had so many projects on my hand I had to work 80hrs/week for a short period of time.
Just to re-iterate in how many different ways you can get projects and even long-term clients, this is my "how I've gotten gigs" list:
* Former employer: when I quit I was 100% honest, boss trusted me and wanted to keep working with me. They are still giving me work
* Former colleague: he quit right before me, started his own small company, knew he could count on me being a reliable dev, became a long-term client
* I was looking for devs on Twago, in order to get help in case I had too many jobs on my hand. One of the applicants was a small dev agency looking for projects. They ended up giving me work, instead of the other way around.
* (most random one) A client I had a few years ago, during my first venture as entrepreneur, messaged me on Skype by mistake, thinking I was somebody else they knew. Turns out they needed a dev, became a long-term client.
* Went back home to Italy during the summer, rented a room for a few months. My landlord was working in marketing, ended up giving me a few very good clients
I've just started my first consulting job via a friend I used to work with. I was 10 months unemployed, living in an exotic country, enjoying myself and building out my own projects. I only ended up taking the job because the pay was good.
Whilst I've been doing my own thing I've met a lot of 'digital nomads.' They all do interesting things and the stories of how they got there are all different. And if they don't like it anymore, they can stop at any time.
In short, there's other options than diving from a job that's burnt you out straight into a consulting gig.
I'm using my savings to bootstrap my idea currently. This side gig I've picked up is a bit of a distraction.
If I stayed at home and continued to live as I was my runway would've been 3-4 months.
I personally think 10 months off for me would be healthy right now in a lot of ways. It would be survivable financially, but in some ways it would drive a lot of anxiety for my partner and I. The support system doesn't exist for this in the US in the same way it does in other nations either.
I was living with my girlfriend, got laid off from a startup but was burnt out a good 6 months before. Financial struggles of that company just made it worse. My previous job had been pretty demoralizing too. I needed a change.
28 yrs old, I got on a plane to Spain with my girlfriend who rented her house out to cover her mortgage. She didn't enjoy it and needed to work to survive financially as I couldn't support both of us not working the whole time. So she left for Aus and now works a desk job there.
I've been living off savings and money from the sale of my car and bike. The lifestyle is pretty different as technically I live out of a suitcase but the experience is great.
In 4 months, my visa will expire and I will move or go home. If I don't work I will eventually run out of money. I could live off ~1000Eur a month but I like to socialize so it's closer to 1400.
There's a lot of people who do it in a more sustainable fashion and on a permanent basis. A couple I know from Cali live here and are renting out their house. He works remotely and she's started teaching English since being here.
Give it some thought, it's a lot of fun and adventure.
7 years ago, I was burnt out from my job and wanted a change, so I quit and picked up everything and moved to Asia with my girlfriend (now wife).
Luckily, I had some savings, so I didn't have to work for a month or two. But, I didn't want to eat through it all, so I got a contracting development job and I stayed there for a year and a half.
My rent for a really nice apartment in a great part of town was around $200 USD/month. Food was insanely cheap and good.
It's easy to get lost in that lifestyle though. It's fun, but it's difficult to save money or build a career. There are many distractions and almost all the other expats that I met were only interested in drinking/partying.
I was glad to finally come home, but happy I had the experience.
You're starting from a position of what do I have (software dev skill) and trying to backfit a need onto it.
The right mentality is to think hard about your buyer: What are you selling, why would someone buy it, and how would they find you? Ideally it should be some kind of business need, like "I want to stop using Expedia at my hotel and transition to get more direct bookings" or "I need a very high-value, complex system migrated from one thing to another". The more risk/difficulty/P&L impact/fewer people can do it, the more you can charge.
What you don't want to do is come in and just be a coder. Those are a dime a dozen. Even though developer skill varies dramatically, there's no way to really bill for that. Most business buyers are going to see "C# developer" and want to pay the lowest rate they can. It is outrageous how little the pay difference (even at software companies) is between high and low performers. It's like 2x, it should probably be like, 10x (no company outside finance would ever tolerate this kind of pay difference). You will never win charging 2x when the other guy is charging 1x for what, on paper, looks like the same skill (a relationship/reputation can offset this partially).
Don't become a "consultant" unless you want to do sales and marketing full-time, as that is the end-state of a successful consulting career. If that isn't your cup of tea, either find a better dev job (if you want to keep coding professionally) or find a company like 10x who will place you with good clients and do the grunt work for you of selling, where you can simply come in and provide value as a high-skilled technical person (which has its benefits, including decent pay, work from anywhere, put up with less of the posturing/BS of typical office life).
Source: did this. Wasted a lot of time doing bottom-of-the-barrel dev work before I realized probably 95% of the software that gets written in the world is boring, not particularly well paid, and has no real career trajectory in front of it.
It's just temp work. It wasn't how I wanted to run my career, but I wouldn't knock anyone for doing it.
I found that selling yourself directly to companies as a consultant takes a different set of skills and requires more than just being a great engineer.
However, to get into these developer networks you only have to be good at what you do and their job is then to sell you as a great developer/consultant. You only have to know how to pass technical interviews.
At least that's my recommendation for when you are just starting out.
But to get great consulting contracts you have to pick a niche where it's difficult to find people and be good at it. For example, I got a large contract by just being good at doing bluetooth connections between Android and BLE devices.
PS: I have a referral link to Toptal, but you don't have to use it and can apply via regular means: https://www.toptal.com/#work-with-the-best-programmers-today
Technical skill is required but not sufficient. Even average is ok. What matters is all the stuff around the technology. Most of it being diligence, follow through, following up and being predictable and consistent. You have those and you can write your ticket.
Hope that helps.
Personally I had great projects and others were lawyers were involved.
But all in all, switching projects every other month, meeting new people , playing with different architectures ... It keeps me sharp and super happy.
Again hope that helps.
I'd argue sales is more important than the rest of what you need to do to get a successful consulting practice going.
It's common to focus on the technical skills above all else. That's a fatal mistake.
I speak from painful experience on this one.
Seriously, treat it like a side-gig until you make more per hour than the day job.
I was lucky to get a long term project two weeks after handing my notice (the notice period in most European countries is 1 month) and from then on I had a steady stream of work.
Not feeling burned down I would never make a jump without any gigs lined up and thinking about it now makes me feel quite uneasy. Still, health is top priority so if you have savings or someone willing to support you then go for it.
You definitely need a "fire" keeping you moving, though - if you have savings & low expenses, making the leap to full-time can force you to learn fast.
So I just wanted to reiterate for anyone really struggling in their day job, looking to quit: if it gets too unbearable, there are MANY options.
Consulting is no longer about trading hours for money, it's about building your reputation and positioning yourself as a valuable asset.
are you solving a problem/challenge for them? you are not a consultant, you are a contractor, freelancer or agency.
are you telling them - and help implement the mindset and processes - on how they can solve a problem/challenge? you are a consultant.
or to paraphrase jerry weinberg: a consultant gives advise when asked.
if you are the second, read "secrets of consulting" by weinberg (and "are your lights on").
then, what is your product? what do you want to advise on? and find out why this would be so valuable to pay you 10k, 25k, 50k, ...
then, get a client, anyway you can and make sure you deliver 20x to 100x times the value than what you cost (note: make sure your client can and will execute what you advised, otherwise you did not deliver any value). make the client your reference case, market the reference case, go a month on a vacation, your next two clients will be waiting when you come back.
my consulting company: https://www.f19n.com/
This server could not prove that it is www.f19n.com; its security certificate is from *.easyname.com.
And so on.
( that'll be $1,000 :-) )
"Time and materials" billing is totally appropriate if the two parties trust each other and the nature of the project is open-ended or loose about the deliverable.
For me my niche is making already built PoC projects ready for production and scaling those. So I target small startups typically with 1 to 5 developers with a PoC built, some traction and a good funding round so they can bring me in with my experience to stabilize/deploy/scale their product and build proper development, testing and deployment practices.
I've been doing that for years, first as an employee, then combined consulting with employee work and since 2015 switched to full time consulting. I have built up a network of investors and people in the local startup scene and whenever my current contracts are almost finished I start pinging those contacts for more companies that fit the criteria.
For larger firms though you won't get in without middleman (because of preferred supplier lists (PSL)). The bigger players pay you usually competitive rates (unless the middleman is fucking with you which is rare but happens), but you won't own the relationship with the client (the middleman does). Work for smaller firms and you run a higher risk of losing money, not getting paid or getting shafted simply because they think they can.
Ask a lawyer to help you draft contract templates which reflect how you envision any business relationship and then make your clients that you work for directly sign that (rather than expecting them to talk to their own lawyer which the won't do if they never considered bringing in a freelancer).
Find other freelancers in your region to speak to and get a feel for what they charge and how they go about acquiring new clients.
Biggest question when pitching to middlemen is "do you have any freelance/consulting" experience. If no this will be a read flag. So be creative to get your foot in the door.
Ensure you stay on their radar: Send your professional profile to every middle-man in the country and keep updating them with the latest version and your current availability.
Always say yes to any opportunity when asked for an interview (even you're busy right now with something else, or it is slightly off-topic for you). It's a chance to network and to practice your pitch (practicing the skills of interviewing and marketing your skills/brand is even more important than knowing your technical stuff, the latter should be taken for granted).
Gerald M. Weinberg's "The Secrets of Consulting" is excellent for anyone starting out in consulting or for those who consider hiring them (in any case your world might never be quite the same after reading this book):
If that’s true for you then you’re either a freelancer, not a consultant, or you’re not charging enough/not in enough demand that they’re willing to work with you one on one.
Nick Disabato has one employee and charges $15,000 and up a quarter for Draft Revise. Do you think he goes through a preferred supplier list? By the same token, when patio11 was a one man consulting firm charging $10-30K for a week’s onsite consulting you think he went though a recruiter?
> Draft Revise engagements are serious, long-term, design-driven, and consultative. We are not a chop-shop contractor, and we do everything in our power to be worth your time and your business's money. Before you send this application, we ask that you be prepared to commit to upfront fees at or above USD $15,000 for our first quarter of work together. The final fee we quote for you will be based on the value we're capable of providing for your business.
I think they were speaking to the OP, who seems to not yet be a consultant, as they are considering "Becoming" one
"Are you making over $2M from your store, but haven’t taken the time to optimize it?".
This is small potatoes for the larger companies and it is simply not worthwhile to negotiate individual contracts on the scale they operate. Unless you are on top executive level, maybe.
"Breaking the time barrier" is also a good book I wish to have found earlier.
Sounds like a Dickensian nightmare to me. I would have thought some of the best placed people to suggest improvements are the people who build the pins, second only to people who use the pins every day.
Stay classy HBR.
If they're in a position where they need to be improvising in order to make pins correctly or efficiently, that's a bad sign.
I'm tempted to give a spin to Linkedin premium features, or just exit the niche and sell myself as a regular coder.
A while back I was at a company that specialized in Sun Identity Management consulting. Not sexy, sure, but they charged clients in the $250-300 per hour per resource (developer) range for projects that spanned several months. This was back in 2008-2012.
Stuff I've seen consultants getting hired for:
- Salesforce implementation
- Sharepoint implementation
- AWS/Azure implementation
Again, depends heavily on what issues companies in your area are facing, that they're not looking to hire FT for.
I occasionally post about my experiences. Perhaps you'll find something useful in my archives:
Which means it depends a lot on your ability to find clients, and get rid of the bad ones.
Bad client meaning the one costing you money, for example by not paying the invoices, or always wanting free stuff.
So ask yourself, How do I get good at marketing and sales? How can I sell the project bu subcontract the developers?
If you just email me (email in profile), I will send you a free pdf copy. All I ask is that you leave a review once you find your first client.
1. The McKinsey Way by Ethan M. Rasiel
2. The Consultant's Handbook by Samir Parikh
3. Selling to Big Companies by Jill Konrath
I'd also suggest reading up and following Jonathan Stark and his ditching hourly mantra.
You shouldn't be looking for resources, steps, advice, pitfalls, experiences, or anything else.
You should be looking for a customer whose hair is on fire.
Then, and only then, should you be looking for whatever it takes to build them a fire extinguisher. Anything else is a waste of time.
Maybe when their hair is smoking. It's easier to help a client who is sufficiently motivated. It's harder to help a client who is completely panicked & out of control.
Here’s my take on it, along with an unvarnished recap of my first year as a consultant:
If you’re a freelancer the bar is fairly low, if you’re a consultant you should really be bringing more to the table.
Read the secrets of consulting by Gerry Weinberg.
Network with other consultants, they’ll become a major source of new work for you.
Writing a lot of good blog posts is the best. Sometimes people contact me directly via my blog.
Now software developers are shortage, so you can find your clients easily. Good luck!
Short version: become a "visible expert" in your field (blog posts, ebook, meetup talks), and then connect with people who might need your service.
The next time somebody hired my, I simply said I'd prefer to work on a freelance basis. They were OK with it, however, because of my lack of experience with freelancing, I accepted a rate that was much too low. So that may be an easy way into becoming a consultant: just say you want to be a consultant...
I figured that out when I became I'll - nothing serious, but I realized I need to ask for more money to compensate for downtimes and risks that employees don't have (also, saving for my own retirement).
After that, I also registered with some freelance sites, like Jobserve and Gulp (latter might be a German thing, but they offered nice statistics for average salaries).
Because I struggle with occasional burnout or simply hating my job, I din't even do much of the network building or friend recommendations. But recruiters keep calling, just as long your CV has the right keywords. Even long gaps of "unemployment" don't seem to matter that much.
However, for the same reason, these days I would almost recommend against sending out your CV or registering with recruiting agencies. Now my profile is out there, and I can not retract it very easily. So I keep getting those calls, even though I don't really want them anymore. I'd say if you can get by without sending out your CV, it would be better.
I haven't really cut ties completely - maybe if I told those recruiters that I definitely don't want to be called ever again, they would comply. But I wouldn't count on it - in general, they just ignore "wishes" in the CV, like preferences for locations to work in.
I was also that way probably not necessarily getting the best jobs (in terms of interestingness, the pay was always OK). It was more "crap, my bank account is running low, I better accept this contract", rather than strategically working towards work I would like. A bit of a "golden handcuffs" problem, I guess - you have to say no to good offers to be available for the ones you actually want.
This may have been more serious for me than it sounds - by being stuck in dreadful Java Enterprise projects, job frustration would mount again, causing me to quit for months, causing me to eventually accept the next best offer, for the cycle to repeat. Maybe with a more proactive way of acquiring contracts, the frustration cycle could have been avoided altogether. (Not sure, though).
Nevertheless, overall I think consulting is great in principle. You earn more money, see more different companies and projects, and the hiring process is not that fucked up. Usually they give you an initial contract for a month, to see if you work out. So they don't have to evaluate you for weeks and weeks to see if you are a good fit. If you are not, they simply don't extend your contract.