It's about moving from developing to marketing. There's nothing wrong with that, but it was a let-down to me to discover that the path to riches meant mingling with the group of people I tend to like the least in a company.
Also, I think it's fair to say that amongst departments in companies, marketing is much more likely to pay (and pay a lot) for a consultant, whereas IT is only likely to pay a lot for outside help when things are really, really desperate.
Marketing is seen as revenue generating, and at many places, IT and (ironically) product development are seen as cost centers.
This might as well have been an article about how to 100x your income by moving from your current job into a similar job in a fintech company. That's a bit like moving from serving tables at Denny's to Del Frisco's steakhouse. Most Denny's waiters are not prepared nor capable of making that transition.
That said, I think people are missing the key takeaway from the article. I think the most important thing in the article is right there in the heading "Clients Pay For Value, Not For Time". This is saying that you should frame your services in terms of a value proposition for the client. That is, how much money will you save them if they hire you to do X. Maybe X is "rewrite the backend to process transactions quicker" which will save them Y hours of compute time and reduce their AWS bill by Z a month.
Every client I've ever had has asked "how many hours?" And "how much per hour?"
If a restaurant wants to increase business by building a patio and they get a bid based with pricing based on increased business and not hours. They're gonna throw it away.
Patio11 was in a unique position to know more about how to increase the business's revenue better than the business. This is a very unique position and advice based on that position is not really relevant to the rest of us who aren't experts in internet marketing.
That's when you explain you charge per project or per week instead of per hour, and the fee is based on value, because in the end they won't really care how many hours you spent as long as their problem is solved. (Similarly, if you _fail_ to solve their problem, they're not going to care how many hours you put in.)
I get this question from prospects too, and then I explain the above, and then we move on with the conversation.
And in my 4+ years of consulting, nobody's asked me _at the end_ of a project how many hours it took. At that point, as I said, it doesn't matter.
Regarding the Denny's -> Del Frisco's, that I could actually do well :). But that's because I have a special fondness for hospitality and providing people great experiences. I'd probably be foolish enough to open a restaurant someday, and I'd probably regret it later.
If anyone here on HN could share some insights, I would highly appreciate it.
“How much email do you send?” “We have a newsletter.” “What else?” “Welcome to free trial email. “What else?” “Nothing.”
I write proposal.
1) Have a pre-sales drip campaign positioned as a “free course about X delivered over email” w/ 8 emails arriving over the course of a month. This will push people at purchasing the product in 2 of the emails.
2) You should email people 4 times during the trial depending on their level of engagement with it. Here’s a decision tree.
3) You should email people within 80% of their monthly quota offering a discount to move to the next higher plan.
4) You should email your entire userbase and upgrade as many as possible to annual billing for a 10% discount to the cost of their current plan.
You can tell your engineering team to do this for you, but there is 0% chance they schedule this because it is boring scutwork and they’d rather do those features you have scheduled this quarter. Or you can have me just do it. I need a commit bit and probably two weeks. It will cost you $30k per week.
Probabalistically this makes you $2 million in next 12 months but your results are your results; you keep all the upside and my invoice is due regardless.
Businesses, to a first approximation, don’t care about their tech stack except to the extent that it drives business outcomes. Can you articulate those pros/cons in a way a business cares about? Can you impact your deliverables to reduced costs or (much better) increased revenue? Then you, too, can look forward to a bright future where HN tells you you’re not really an engineer anymore because your rates are too high.
All of the recommendations you gave were related to selling the product, not improving it. That's not a bad thing; it just means it was a marketing consultation.
a) to have a lot of marketing expertise
b) to be known well enough for your marketing expertise that people will take your suggestions as valid
Most tech people have neither one. Hell, most marketing people have neither one, half of the rest on my have b) but are actually incompetent in their recommendations, and only the last little bit have both.
If you want to make the big bucks, you have to do what businesses care about, not what you care about.
For instance, even though the root cause might be high latency, the actual problem is that the high latency is killing your retention.
If the business is sophisticated enough to value technical expertise, often they value it so much that they are willing to hire experts full-time, or they're so small that they can't afford to. So as a technical expert, you end up caught in a weird uncanny valley (in my experience). I think that patio11's advice is, as always, spot on here; the skills needed to become a technical consultant that charges $N/week are way higher than the technical skills needed to become a business consultant at $N/week, for any value of N. That isn't to say that technical skills aren't value, just that it's a tough sell to make, for a number of reasons that patio11, and others, have written at length about.
How do you make sure the company won't just take your advice and hire a guy to do this for 90k/yr instead of letting you work on it for three weeks?
People occasionally took my proposals and productionized them with existing or (much more annoyingly) new staff. Oh well. That’s one reason I charged what I charged; the sales process assumes 1 to 3 “actually nope we decided we don’t need you” per engagement which happens.
However the indisputable fact is that these companies are willing to shell out for this stuff, whether because they think it’s temporary work (cheaper to hire Patrick than an FTE who you then have to keep paying or dispose of) or they’re paying for the top-of-Hill expertise (eg. paying a Big 4 where you get 10 hours of a partner’s time/expertise at 1k/hour and then 300 hours of 23yo grunt labor).
Is it easier to work for a consulting company as an “employee” before venturing out alone?
At first he undercharged, not as a tactic to start consulting but because he didn’t have confidence in what he was selling. I believe he started off at $5,000 and stopped consulting when he was charging $30,000 a week.
But most of his work came from pitching people. Write an email or make a call to a company that seems a good prospect and follow up. If five percent convert you’re doing pretty well. You also get referrals from previous satisfied customers.
As well as that Patrick wrote a lot on his website about what he did and how to do it, which functioned as a proof of competence and lead to some people contacting him to ask him to work for them. Authority, Nathan Barry, is all about this publicising proof of competence tactic.
> You should email people 4 times during the trial depending on their level of engagement with it. Here’s a decision tree.
Do you have a link to an example decision tree for a typical SaaS app?
The entire purpose of selling a product is to scale through volume rather than customization.
To me the big divide is how superlinear your revenue:employee ratio is. If it's linear or close to it, then you're a consulting org. You make money based on the hours of work you are able to bill for in one way or another. If it's a "product", but you as the product developer are doing heavy customization, then you've just transitioned from an hourly billing model to something resembling fixed bid, but with a fiction of a product in the mix.
I am in the middle of another marketing consulting gig right now with a SaaS company. I was hired to help them drastically reduce their sales cycle. They sell to enterprise companies and the sales cycle takes forever.
I'm working on a new front-end website for them, with better copy, more testimonials, white papers/case studies, and a live demo of their product. (Today, potential customers have to request a demo--having people be able to see the product for themselves should shave at least a week off the sales cycle.)
I have both a technical background and a marketing background, so I can write both copy and code, though I'm stronger on the marketing side these days.
When I worked with Patrick at WP Engine, I was also lead on deploying a new front-end website, with a better tagline. My most important contribution there, though, was that I came up with the "10 sites for $99" pricing structure, which is a huge component of what made them so successful.
I am also working on a better pricing structure with my current consulting gig.
I spoke more about what I do for SaaS companies in this talk at Microconf: https://vimeo.com/72456666 (Notably, I did this talk, and it was posted here on HN, several months before pg wrote his "Do things that don't scale" blog post.)
Although a lame story, Let's say you are responsible for initiating and managing a new software project in your company with complex bureaucracy and management. You have found that it is highly feasible to work with Agile methodology instead of Waterfall.
But Waterfall has been how the things had always been done, yet you know that the team is ready for Agile and project is an exact type of work that would benefit from some "lean" approaches. Worse still, management won't listen, also because "The Board" won't listen.
What you do is that you go to that well-known, highly-paid consultant, discuss the situation and he basically says, "OK, You are right. Also this and that."
Then in your presentation to the board while pitching Agile, you say, "Agile is the way to go. I asked Patrick Kalzumeus, and he said it was a good idea."
And that's it.
That "credibility" is one of many ways how a business consultant may "add value" to a highly organized company.
1. What's the proposed issue/improvement?
2. What are the recommended options?
3. How much time will it take to get done?
In other words, all you really need to communicate is why we're doing it, and when it will be done.
In my experience, they're not interested in challenges faced in implementation. Keep things simple, and deliver on time, and you'll be speaking the "language which management can understand". That's basically all there is to it.
Your line manager may be interested in a technical issue / improvement and understand its value without further explanation -- for instance, we're using a brute force algorithm that takes exponential time to foo the bar in the Baz module. It's got test coverage and the problem has a known logarithmic solution, so we could rewrite that in a week to be more efficient, and still be confident it's accurate.
Your department head may be willing to consider fixing a problem that affects efficiency or security or expected timelines -- we've identified the likely cause of at least one class of those outage events you've raised concerns about. If you want to fix it immediately, we would have to push back delivery of the Quux feature by a week while we rewrite a portion of the Baz application, but other risks are minimal.
The C-suite is mostly interested in problems/solutions framed as "how does this save us money" or "how does this make us money" -- we intend to invest a week in technical maintenance work that will allow us to save 25% of our monthly hosting costs by scaling back hardware requirements, and reduce the frequency of outage events that we have to pay out for on under our SLAs by 75%. That would cost $10,000 in developer time and delay our product schedule by a small though measurable amount, but I estimate it would save us an average of $48,000/year in costs.
The other piece I've seen is being able to handle "I want Foo by X". It's easy to take on the engineer mindset and say "Sorry, that's not possible. The whizbangs alone would take more than that time!", but what do you do when they simply repeat "I want Foo by X"?. Picture the various Star Trek series where the engineer would say it'd take 5 hours to fix something and the captain retorts "you have 2". It's real.
The skill which really makes me jealous are the folks who are able to read between the lines and get at why they want Foo and why they need it by X. Instead of saying "Sorry, no can do!" they're able to offer Bar instead, and because they understand the deeper motivations of why Foo is being requested they understand why the manager is likely to accept Bar instead of Baz.
This is pretty similar to your C-suite descriptions, now that I reread it. But it's a different spin on it.
One tactic I can suggest (if your manager isn't a totally unreasonable cartoon tyrant) is to simply be explicit about it and ask "can you explain more about why you need Foo?" and then "what's driving the deadline of X?" Understanding the business case is generally necessary - though not always sufficient - for coming up with an alternative solution.
I suspect that part of the gap between people who are and are not good at this is how well apprised they are of the general conditions, initiatives in other departments/teams, and short-term strategic goals of the company.
Some of that is on the person who may or may not put in the effort to remain informed; and some of that is on the company's management that may do a good or a poor job of communicating those things proactively between departments/teams and from senior management down to junior management and line workers.
Depends on the individual, not on the job title. In my experience, managers of any level value information as simply put as possible. If they ask questions, then you answer them, but otherwise just tell them what they need to know.
i.e., "the expensive consultant said it was okay, so don't fire anyone in management, or our technology team, if it goes sideways."
in other words, they're actually helping you do your job because they can compare your recommendation to other companies and teams in the industry and make sure everyone is doing things sanely. in your case, you were smart, and made the right recommendation, so they agreed with you. good job, you're competent, and aren't putting an established company into a risky situation like you would at a startup, which generally does not hire consultants, because they have nothing to lose and everything to gain.
you probably didn't see it that way, i'm guessing.
(More seriously, being unable to trust your employees to give useful feedback is a sign that your culture is a disaster)
I was hired to come in and assess the software that they were developing - they were working with some contractors, some vendors, and a smattering of other people, and wanted to know if their current method was working, how to address some concerns they had, and whether their current vendor was doing a good job.
I discussed it extensively with them, looked over the code and repositories, their current deployment, their backlog, looked at their priorities and basically told them "They seem like they are doing a good job, with the caveat that using contractors and vendors means you will never develop those skills in house, so I would hire at least one competent programmer internally to work with the vendors/contractors you hire, in order to develop that expertise, if you intend to use custom software as a core part of your business on a continuing basis".
This was conveyed via a written report with citations and via a meeting with the C-level executives of the company.
For this review and strategic suggestions they paid me about $1200 for an afternoon's work. That doesn't count time that went into acquiring the gig, scheduling, following up, or billing, just billable hours.
Probably most important is the the company externalizes the decision so there is less internal responsibility.
If a client is uncertain about something and feels risks, you could be contrarian but otherwise no.
I do enterprise software consultancy, which means that those big companies that don't think twice about buying Oracle or Visual Studio Ultimate, hire companies like my employer to come in and develop software for them, instead of having an internal R&D department.
Usually because for those companies software is a by product, something that they need for their real business, the one that they earn money with.
Then you have business consultants, than come in, evaluate the current set of working processes and provide optimization guidelines based on a specific set of targets.
There are other variations.
You're a software consultant working with an enterprise company? Congrats, you're an enterprise software consultant.
I know that places I've worked have had management consultants, who came in, worked with our teams for a few sessions, and wrote us up some recommendations as to how we could better work together.
We also hired DB Performance consultants, who came in and helped us optimize some gnarly queries and do a DB "Double check" to verify that the path we were on was good.
Another time we hired a pricing consultant, who helped us come up with a strategy to change our pricing and avoid pitfalls.
Basically, They are subject matter experts who may come in and actually be on-demand teachers in my experience.
> can be anything from a written recommendation to a turn-key, green field system.
Sometimes, we are there:
- to propose a set of tools or architecture.
- to migrate legacy systems.
- as staff aug (AKA "butts in seats").
- to do green field development.
Usually, it's some combination.
> contractor with some specialized experience that somebody values more highly than software development alone.
At least in our group, we definitely distinguish ourselves as different from contractors. At our core, we can do the contract work (and often do), but we also help out with the business side of things. Basically, we are contractors who know how to interface the technical side of things with the core business.
Oftentimes, we end up at a client who knows they want to build a system to help them do a thing, but that's step 10. They might know steps 1-3, but need our help figuring out and accomplishing steps 4-7 (e.g. defining actual requirements, organizing a good dev team, etc.).
Employee: Does what the boss says, and works when the boss wants them to work.
Contractor: Does what the client asks them to do, but has the flexibility to do it on their own schedule and according to their own way. In the US, the IRS may want to reclassify you as an employee if you dictate too much of how the work is done.
Consultant: They review what the client is doing and recommends what they should be doing, often performing that work too. The key difference to me is the client accepts they may not be the most knowledgeable in what change they want to make.
To give examples for programmers:
Employee: works on a app in the office from 9-5 adding the features requested.
Contractor: adds requested features to the app.
Consultant: reviews the app and proposes some features to add.
They come in to do a specific job, then leave.
Since I started selling myself as a "Mobile Consultant" I made significantly more money than selling myself as a "Front-End Developer", "Freelance Developer" or such.
Seemingly it's all in the wording these days.
"contractor" is the replacement status for permanent employees. They are outside of normal payroll and company benefits, they usually do 1 to 6 months repeatable contracts.
"consultants" is the experienced people who need to be called by up-the-chain to perform important matters and take critical decisions.
I am not a freelancer because I work for a larger company.
I am not a contractor because, while that is a good chunk of what I do, I provide more than just software development. Oftentimes, I end up working with clients to actually determine what they need and how to build it. Then I help build it. Contractors typically just build it.
Of course, this was different type of consulting than what Patio11 did, but there are a lot of different kind of consultants.
For example: reviewing someone's database configuration and providing general recommendations for improvement is consultation, but so is directly modifying those settings for them and not actually telling them what changed. The expectations and deliverables are set by agreement between the consultant and the consultee.
The top global management consultancy firms are McKinsey, Bain and Boston Consulting Group.
The most important part to realize is that a consultant is a vendor and as such certain policies that the company has may not apply.
For some further research, read up on "process consulting", for example.
True consulting is almost like being a psychologist for an organization. Technology consulting varies, but true technology consultants are not technology specific, they are more like experts in knowing how organizations use systems and technology and assisting organizations with technology selection, architecture, hiring, training, organizational development, change, politics, psychology and/or complex situations that require additional outside expertise or brainpower.
I think a good example where technology and business consulting intersect is data warehouse consulting. If you have or want an enterprise data warehouse, you need likely need dimensional modeling. Dimensional modeling is a technique not a specific technology, many organizations don't have specialists with that knowledge. The best data warehousing consultants I have seen will come in when requested, determine the organizational situation through observation, propose a conceptual solution in concert with the organization, designed to fit the way the organization works, help with training staff on necessary techniques (such as dimensional modeling, if the organization chose to adapt it), and act as an expert for tough questions during implementation and after. Assist the organization with identifying data warehouse technology solution options that fit the need and budget, staff and skills, data migration, etc. as needed and desired by the org.
I think one key difference between a consultant and a contractor is, a consultant is more like an architect/engineer advisor "thinker and recommender", but a contractor is often more like the engineer/builder "thinker and do-er". Both are external experience for hire. Of course you get blends/crossover people who are both.
I also think consulting is more prevalent when there are a smaller pool of people with knowledge and experience that needs to be shared. Scarcity of skill creates demand that requires compensation due to competition for that limited resource.
Skills wise, I think you need a mix of soft skills and specialized knowledge in such an area, combined with the ability to communicate, market, network and run a business. Education
-wise, I have a degree in information systems and one in organizational studies. I think combining organizational studies plus any specialty area is a great combination. You can also achieve this through an MBA+specialty area.
* I get on calls with potential clients to see if we can solve one of their needs. Their needs can be broad: auditing code or specific implementations; reading and vetting pages of protocol design; advising on third party products or libraries; documenting the risk of the latest X attack... Sometimes I can do it, sometimes someone else should do it, sometimes no-one can do it.
* If nobody can do it but it's an interesting problem and it's relatively reasonable to tackle I (or someone else) will spend X weeks researching the subject so that we can provide the service in the future. We've done this with ethereum smart contracts recently for example (it's been pretty fruitful and I'll be giving a talk at Black Hat Asia in a few months on the subject).
* When the job starts, I'll be talking to the client to make sure we're on the same page, see what kind of claims they want to make, what they're more scared of, etc... This helps a lot, but of course the client is not always right or not always aware of what might go wrong. Most often companies do not even have a threat model and have no idea what they should really defend against.
* Most of my engagement are remote, but depending on the field you might have to go on-site. In any case, you always try to be close to the client so that you can get responses relatively fast (consulting is expensive, you don't want to lose your time trying to find answers they can provide). (Unfortunately it is not always possible as some of them are really busy or just do not want to spend the time answering questions.)
* Whatever the type of job is, you always spend a few days internalizing everything you're reading or hearing (I call that drowning). You try to get an idea of what the product/protocol/solution/app is (if it's your first time working on it), you read papers or articles about it if you're rusty/missing some pieces, you go through the codebase and ask questions to see what is what and what is where.
* Then you dig in, you do what you're best at. In security/cryptography we try to break things, find gotchas, discover flaws :)
* Eventually, you need to provide some product to the client. It is often some document or a presentation (or both) of your findings. You want your client to understand what you did, like really, this is after all the product they're paying for. You also want to give out recommendations on how they can fix things, sometimes you will want to fix things yourself as well. It all depends on what you can do or what the client wants you to do (if you agree).
Anyway, these are my 2 cents. It's a field that mingles expertise with client satisfaction. You need to know something that can help one or several of their problems, and then you need to do your best to convey your explanations.
(I just wrote this huge comment because I felt inspired after reading a large 2000 day-old tptacek comment.)
At the end of the conversation, Thomas said something which, no exaggeration, changed my life.
Thomas: Some food for thought: If this hadn't been a coffee date, but rather a consulting engagement, I'd be writing you a check right now.
Me: Three hours at $100 an hour or whatever an intermediate programmer is worth would only be $300. Why worry about that?
Thomas: I got at least $15,000 of value out of this conversation.
Does this really happen in real life?
I can give the same info to 2 companies, and one can make several hundred thousand dollars (in savings, new sales, etc). The other may not even be operating at a scale where they'll see $10k in increased value, even doing the 'same' thing the other company did.
Determining who those companies are, then connecting with the appropriate people, that is still the hard part. Meeting someone for coffee, giving them $15k in 'value' from a conversation... probably does happen now and then. I don't think many 'consulting engagements' actually happen at a coffee shop for an hour or two ending with a $15k check being handed over, however. (but maybe I'm too cynical and it does happen a lot)
"Okay, we signed a one month consulting engagement, starting Tuesday." Consultant(s) show up on Tuesday, no db's or credentials have been set up, everyone seems surprised they're there.
It consistently amazed me how much consultant time companies waste. When if all of this had been ready, I could have delivered much more value by the end date.
And then same problem with actually using any work produced.
I'd estimate the effective-ineffective customer split is somewhere around 30-70.
I think it comes down to priorities, and the fire in front of you always has higher priority. That means that onboarding and prereqs are not the priority until the consultants show up on-site and you are paying for them to find other things to do while waiting for the real project to start. Then it is a fire, and everyone starts moving with purpose.
Not a consultant but would list or report what time was spent on and they'd see line items like "waited on having accounts set up by IT for 2 days"
In most cases, those situations haven't worked out well, but it seems nothing does. There's sometimes some cult of personality - "do it Dave's way", etc. To which the logical question "if Dave's way is so good, why are things broken and people are bringing in outside help to fix things?" If you can't ask that sort of question and get a good feel up front, it may be worth skipping the project (unless they pay is really good - I've usually put up with more crap than I suggest other people do because I wanted/needed the money)
They can come really handy if the fire brigade comes in when invoices start getting discussed.
Always better that they never have to be formally given to the customer.
The company didn't get much value but they probably don't get much value out of their employees or anything they do. Doesn't matter, you are not here to change the world, they don't want you to change their world.
1) The decision to hire a consultant is (in most orgs) made at a level abstracted from day to day operations. So the person hiring you may simply not know what needs to be done.
2) The consultant's patron didn't take the time to get buy-in from all necessary stakeholders. This happens a lot at the VP level. You may have absolute commitment from your project's VP, but when you need resources from another part of the organization this turns into "what's that person's VP's relationship with my VP." Which may be great, or may be terrible. Navigating office politics to aid a project's success is 10-25% of being a successful consultant (result wise).
3) Inconvenience to ongoing work. I know if someone failed to loop me in and introduced a stranger to me on Tuesday, then asked me to do something that impacted my ability to do the work I already had scheduled, I wouldn't be overly happy.
4) Poor IAM (identity and access management) discipline and IT organizational structure. Consultant access and timelines are normally very different than new hires / "business as usual". The client may not be able (technically, process wise) to successfully complete an ad hoc request on an accelerated timescale.
If they cared, it would be handled or they wouldn't use consultants.
This is where providing transparency and insight (in a "how can we fix this?" way) up to management can help engagements go more smoothly. If everyone was aware from the first that "that QWSV system access issue" has been impacting the projects for weeks, that's much better than "the project is weeks behind" being communicated up at a random status meeting.
I wouldn't advise to participate in the blame game or to point fingers. You are not here to cause troubles and trouble is bad for repeat business.
P.S. Organizations are dysfunctional and the majority of consulting time is wasted. Lesson one of being a consultant is to live with it. :D
But if shit really hits the fan, at some point management will be asking "Who was supposed to do this?" And between that and the finger possibily being pointed at you... soft skills in handling politically tense situations well are useful.
Looking at a small company that's pulling in $500k, there's almost no way anything you do for them service-wise would be worth $300k to them (short of you taking over operations or similar). For a company pulling in $50m, there's almost certainly $300k of value you could bring to some department, doing probably the exact same work you might do for the $500k company.
Have you ever heard yourself and your tech colleagues talk? :P
I'd wager most people don't have someone like tptacek as an internet buddy or knowledge that would interest them, though. They literally mentioned HN karma rank titles... so much for fake internet points? Does this sound odd to anyone else or just me?
There's likely some small percentage of people who can go on to do consulting and charge lots of money. That this applies to a greater amount of people remains to be seen and is not proven by this post.
Most people are too afraid to cold-intro themselves. Just send an email, worst someone can do is ignore it.
FWIW, I emailed Patrick, author of TFA, a couple years ago with a question and he helped me out. Then last month I emailed him again and we met up for coffee in Tokyo. Just email someone you'd like to meet and ask.
I don't think I ever called you an NSA shill, although I did commit the grave offense of suggesting that Firefox is a secure browser, which I imagine is even worse. :P
Sadly, I'm pretty far away from Chicago and likely will be in the foreseeable future.
I go up to Chicago every once in a while to visit a childhood friend and would love to ask you some questions about consulting/bounce an interviewing app off you over coffee.
If you are physically proximate to him he’ll buy you a coffee. Pretty cheap price to pay for a new internet friend.
I’ll also suggest to you that Patrick (nor any of Thomas’ successful friends) is successful cause he figured out how to turn HN karma into gold (I’d bet Patrick would say HN karma all represents wasted opportunities for your own content).
But there are different levels.
You don't have to be good enough to convince the CEO of Microsoft to make good money.
There are many many more small companies that still can give you good money and are more easily convinced.
In order to charge that much as a consultant you would have to have a very particular set of skills, skills that you acquired over a very long career.
In corporations you see the same thing. Some guys meet the big VP and make a lasting impression while most others don't. This is not about skills or knowledge but about the way you talk and behave.
Actually knowing what you are talking about is the key to making the business last.
If you're doing contract development that can be done half as well for a quarter of the cost by an offshore team, you are not doing consulting. You are competing in an arena that you will never be able to win.
If you want to consult for good money, you have to create your market and you have to have the confidence of that market. You have to be able to give C-level execs advice that they want in a language they understand to solve the problems that they deem important. The vertical market is just as important as the horizontal one. In other words, a CRM expert is generally valuable. A CRM expert that can provide technical, management, and executive strategy solutions in the healthcare space is extraordinarily valuable. The very strong technical guy can be worth $2-300 an hour if he knows the right software and knows enough to put himself in the right position. The vendor that has brand recognition and a consulting team built around their product is worth more. The consultant who knows the ins and outs of the vendor relationships and how they fit into the big picture of solving the customer relationship problem and can throw together a comprehensive multi-year strategy that differentiates the client from their competition and will have a positive effect on the stock and market position is the consultant that makes good money.
You don't get to be that guy by being the best developer or by having a history at one of the big three. You work your way up the ladder, make a difference, and then offer that difference to someone in a parallel position. You build out a team, a strategy, and a marketing plan that puts you in a position to drive.
CIOs, CTOs, and CEOs are not stupid. More often than not when they throw big money at organizational priorities, they know those projects will come up short in one way or another. But if they spend all their time focusing on getting those things perfect, they will be standing in the way of progress in other areas. And when they are focused on getting one of those priorities right, they aren't looking at spending five figures a week on a single person for a consulting engagement focused primarily on software development. Maybe occasionally, but not usually.
Besides the ad hominem, what other "smell test" does he fail to pass?
I think one of the problems with being a young person starting out now is that there is so much info out there that you can read (or watch) that you perhaps don't do as much "doing" as we did in the past. As well as learning and figuring out on your own. By thinking and reading the signals and making mistakes.
In the end I think the issue is reading does not make you clever and we used to call this 'book knowledge' back when I was growing up.
As somebody who is a skilled backend developer the value I provide is not as measurable. How can I justify charging a large weekly rate, when almost nobody can provide an objective number of the value I provide?
Learn to do something which is more measurable, or figure out ways to measure some particular aspect of value you can bring. In back-end software, it will most likely be around performance or security. Doing a security audit then proposing remediation... if the company has already been hacked, they (should) understand the value rather quickly. If not... it would be a harder sell.
Performance? Would be hard, I think, without being a brand and people seeking you out. Speeding up an ecommerce site can definitely have measurable impact on bottom line but... if a company is big enough where that would have meaningful impact, they probably already have a team of people to navigate through to convince them of your value/skill/ability.
I work with companies operating at a large scale. Downtime costs $xxx,000/minute.
Developers cost lots of money, improving their productivity by a little bit pays huge dividends.
If the company has big events like Black Friday or Superbowl commercials, keeping the site up during those events is worth paying for.
Many not so big companies spend 6 figures per month in AWS bills.
Lots of work for a backend consultant.
So I guess I would counter what you said with experience/network rather than a brand.
* do work for someone you know
* write a case study documenting success
* repeat with a slightly bigger customer
Margins matter too, not just headcount. Someone could do $2m/year but make less than someone doing $800k/year with better margins.
Doing perf/security reviews of a niche like that (woo, magento, etc) would probably still be a place to focus and make money, if you want to stay 'back end' (or at least technical). But even then, some of the measurable stuff will be needed - "we reduced the load times by 45% on the checkout page, and conversions went up 17%, adding $87k in profit last year".
99% don't care unless and until they get hacked, they will also forget about it all in 2 months.
If they don't get hacked for years they will just attribute that to luck and probability, not valuable security consulting.
And if they do... you can guess that one.
Lots of smaller businesses just don't care. They also don't have "chief somethings" to tell them it's important, or to do it to save their own asses just in case.
They just fly blind and in many cases they get lucky which further solidifies their beliefs.
And in the odd case when they get screwed they just bury it and move on.
Or post a "we are very sorry! security is our TOP PRIORITY!" message somewhere and move on.
I mean just look at the Equifax fiasco. Then scale that down to the smaller companies and see what you end up with...
if anything, knowing how much you can do (10 hrs of work) per week, makes it easier for you to propose how much value you can provide each week, no?
There's a lot of people who can write/edit good copy, and a lot of people who want a job writing/editing copy, but a limited amount of jobs, and I doubt the market is expanding as fast as tech. Think of some problem that can be solved with software and you've just created X programming jobs, X = # of people required for that company's engineering department, whereas the value to society of adding another news site diminishes quickly.
So there ratio of people who can write good code to programming jobs is lower. Also, and this is a huge assumption on my part, the # of hours you need to put in to be a competent programmer (at the level of money I'm also assuming you make) is greater than the hours to be skilled enough to produce decent copy (for the average person). So it's more difficult for the # of programmers to catch up to the # of programming jobs. Thus, the demand for programmers drives salary.
This is all without talking about the subjective amount of value to society a programmer can bring compared to a copy editor.
To fix this (I hesitate to call it injustice) we could raise taxes+implement UBI or increase funding to some other social welfare programs and raise the maximum income required to take advantage of them. But I think essentially, what careers people choose should be somewhat influenced by what society needs, and salaries can reflect that.
Not saying that the demand for programmers isn't all fucked up because of startup speculation and other factors, but I think in general the tech industry provides a lot of value for the world.
Educate yourself on why does that happen. Main purpose of every company is to make money. As long as IT is making a lot of money programmers will be paid a lot. As soon as industry starts to cool down - our salaries will drop as well.
I know about the ageism in the industry, and I do worry that in 5-10 years I'll be struggling to find work. I hope I'm wrong.
Why aren't there (afaik) consulting agents in the same way comedians/actors/musicians have agents?
Find me a gig, negotiate the payment, accept the payment, and pay me. Also interface with the client for me.
Ultimately the agent works for me doing all of the work I'm bad at.
Does this exist? How do I hire somebody to do this sort of thing for me?
Many reasons for this. One reason though is simple logistics in terms of how the world has changed since that system was in place. And for what reasons.
In the 'olden' days there was no internet. So if you were a performer you needed an agent for one thing you probably had little business or negotiation skills and no source of information to figure it out (nor the knack or desire). And also there was no easy way for 'customers' to get in contact with you. (Now it's trivial to go direct to a developer by email).
Also with performing the product is pretty much always the same. If you are going to book a comedian for a certain night at a certain rate you know the product. With programming it's all over the map in terms of length and deliverables.
Above just a few reasons.
That said it's not a bad idea not to mention it is almost certainly being done but maybe not on a major known scale.
Furthermore the amount of time required for the comedian/actor/musician to complete the work is pretty small.
If you can start charging 6 figures for projects you can complete in a couple days, I'm sure an agent would be happy to work for you. If not...
There are tech recruiters that will do short term contract/placements, which may be close, but they're not an 'agent' in the same way as a music/actor/sports agent might be, who may know you for years and understand your career/strengths/skills/etc. The tech recruiter will still more be a body-shop sort of thing.
It does exist, but they hire _you_ not the other way around, because you would be their employee.
There are firms out there, like recruiting firms, but they will take much more than 2%. Probably close to 25% and you work for them.
My best advice is the find an industry which have a lot of consultants working (so you know clients have the money) and then offer yourself as a consultant with a design, tecnical, financial etc approach. I.e be a niche player in a large industry and never grow bigger than 10 people and instead start charging for things that are scaleable and which clients can use even after they move on.
Did a ton of projects for Adobe and their Lighthouse division who were pushing their flex platform back then.
This time we are focusing on something quite different but again in an area with few people who can offer what we do but who still are used to paying for consultants.
We get great clients but they get someone who is very experienced and know a lot of the typical pitfalls.
- Would not expect to see a "such as" in statement of work in the locations you used them.
- Would not expect typos in statement of work.
- Consultant will push commits to source control.. I have other employees to code, I would pay an consultant to consult. Define strategy, architecture, coach. Not type code, you are way too expensive for that. Are you taking yourself serious?
What I read is a freelance software engineer.
In other cases, I'm doing more of that other work - actually 'consulting' - meeting with people, helping determine strategy/direction, etc - then sometimes managing the project and/or doing some code (if code is needed, and usually is).
I quess Perelman was also just "typing a proof".
The amount of clueless people here is astonishing.
The real world is a matter of location and experience I guess. Silicon valley would not be my example of the real world. My experience is more companies see consultants as not another developer. They already have their architects and engineers to do just that. People typing code as their first commitment, stating they will commit code to archive in their core statement of work, do not scale. I'd rather have a consultant using his experience to teach my 100 developers what to make and commit to the archive. Have his experience, mind and vision executed by 100 people. That scales. That is worth the 5 (6,7) figures I pay him. If he can only work as hard as at most 2, or heck 5 of my developers I'd rather hire that at a fraction of the price.
Note that this thread was on consultants that ask 5 figures a week. I took that as upper half end of the 5 figures. Entry level consultants coming at 85-150€ an hour (in EU) are a different story. They would be seen as an architect with experience outside the company and as of such would most likely code and design like a regular architect.
Not all are clueless I guess. Just people from all over the world and from all sorts of companies.
P.s. Only have experience with enterprise consultancy. After writing I realize this may be entirely different from consultancy in/for a small sized firm.
Consultant does mean something. Means you temporarily hire experience in a field you are not familiar with to bring competency to your company, train/knowledge transfer to employees, and have a quick up ramping of a project which can continue when the consultant leaves because now you have a proper architecture and your employees are trained to use it, work with and extend it.
It isn't. For reference: https://web.archive.org/web/20170927012427/https://kirubakar...
"desgin assets such as color palette and images to be used".
Under 1.3. Also in your reference.
Curious if you have any recommendations.
That's probably not a very useful answer, but that's how I got most of my clients, who then referred me to their friends etc.
If I were new in a city, I'd find a way to accelerate that by going out more and meeting new people doing activities I enjoy. One of my friends made a lot of connections at the climbing gym, for example, and he got a few consulting contracts that way. The conversations for him were as simple as "What do you do?" "I'm a software consultant" "Oh, we need someone to do x at our startup. Do you know about that?" "Sure, let's talk more".
I'm sure there are other ways to jump start your connections... make something shareworthy and posting it on HN, for example.
When I started consulting, I was living in Seattle and I had a single long term client. Now that I live in San Francisco, there is high paying work everywhere.
After having done this for a long time, I've learned to be zen about the intrinsic variance in income. But it is still hard psychologically. While rationally I know that I make more per year as a consultant and have more interesting work as a result etc, it's still painful to see the numbers in the spreadsheet go down when I'm not working for a few months, even if it was a deliberate decision that I made.