Ask HN: A company wants me to do professional training, how much do I charge?
I had a very large firm reach out to me regarding professional training for AngularJS. The training will take 40hrs (15 live webex, 12 live Q&A via WebEx, 13 providing e-mail support), and I have to write a curriculum around the specific topics they want me to cover during the live training.
This is the first time I've ever done professional training, and I don't know the standard pricing for this sort of thing. Specifically, when do you typically charge by the head, by the hour, etc and how much for each?
(PS - if anyone here has done professional training before I'd love to pick your brain sometime)
12 comments
[ 6.7 ms ] story [ 41.1 ms ] threadSome things which may help you calculate how to price and pitch this:
On-site training by an expert in an in-demand technology can very, very easily hit $5k to $10k per trainer per day.
Sending an employee to a single conference on AngularJS would cost on the order of $1.5k to $2.5k -- on the low end, $500 plane ticket, $300 hotel room (2 nights), $350 conference ticket, $150 in per diem, etc etc. Seen in this light, $1k per seat at the training is cheap at the price, and they can still get work done on days where they do training.
If it were me, I'd be shooting for anywhere from $25k to $50k for this gig, depending mostly on a) how much I thought I could get and b) how tightly scheduled the engagement was (an engagement which would get done faster would counsel not being quite as aggressive on the quote, whereas one where the email support dragged out over weeks would block other engagements and counsel charging appropriately for that diminished productivity). It doesn't particularly matter how you break that down on your invoice.
Remember, if you help a 5-person dev team bring in an application even 1 week early versus having them self-study, the amount the company saves versus not having you in is considerable. That dev team costs $50k+ every (two week) payroll period.
P.S. A good question to solicit useful information from the client is "I want to make sure that I have an appropriate curriculum given the group size, so, how many folks do you anticipate attending?" If they quote a small number, you can quote a per-project rate, if they quote a rather larger number, you can quote a (smaller) per-seat rate which works out to a larger number.
When I quote them, how should I be breaking down the quote? (I'm thinking the different price breakdowns would look something like "curriculum creation, live training, email Q&A," etc?)
They're planning on having 23 devs in this online training session, do you think that's enough where I would want to quote per seat?
(I'm a total noob at this, thanks again for your help!)
Example:
Proposal A: Curriculum creation + 15 hours live training for 23 attendees = $25,000
Proposal B: Everything in A plus (fill in the blank) = $35,000
Proposal C: Everything in B plus (fill in the blank) = $50,000
So you could potentially have a conversation like "Alright, the budget is only $40k, so we can't afford the proposal." "No problem, we just move the (email support or whatever) out of scope and then we can do the $35k option." "Oh great." or "$50k sounds a little steep." "If you'd like a less expensive option to get started, we can just move (the email support or whatever) out of scope and do the $35k option." "Well we really want the email support." "Sure, that makes a lot of sense. After all, you have 23 developers working on this project, so if we shave a day off your delivery timeline that saves you, hmm, $23k or so, right?" "Sounds about right." "I think its quite reasonable to expect that personalized email support about their exact blocking issues might let us shave at least a day off delivery timelines, don't you agree?" "Plausible." "So seen in that light, it's virtually guaranteed ROI for you to go for the email support in addition to the training, right?" "Alright, sure, let's do it."
Not saying it can't be done, but I would think for teaching a programming language or a framework that a ratio of 1:10 would be more manageable when doing hands on training. If purely lecture than it is likely not an issue.
I'd defer to people who have done more of this though as my experience is limited. As for pricing, to me it is all about client value, and you already got awesome advice.
Patrick covered the "charge more" side of things much better than I could, so I'll say "what Patrick said times ten" and talk about things from the teaching side. Here are some of the things I wish I'd known when I started:
* Both the trainees and the suits upstairs are very happy with “And here is the finished product we shipped to Heroku during our class”, even if this approach means you can't cover quite as many theoretical concepts. Think back to when you first start with a new framework: you're not sure how all the pieces fit together, yet, and until you ship a project or two you're not sure what you don't know. If they're sharp, they can fill the gaps in theory on their own—your job is to help them gain the confidence that they can ship.
* In my experience, trainees' eyes glass over after 6 hours straight or so, and covering new concepts is moot. If you have the freedom to mix up the training with 4-6 hours live, then drop down to QA, that should help keep their attention longer.
* I love mixing smaller exercises into the curriculum pretty regularly. Letting them actually try out the concepts helps them feel like they own it in their own minds.
* This may seem obvious, but schedule more breaks than you initially think you'll need. Your trainees will want a chance to get coffee and let things settle down in their minds. I'll usually give the trainees a full hour for lunch. I'll give myself at least 20 minutes away from the trainees to breathe, then I'm around to answer their questions during lunch before we start up again.
* You need two computers. One for WebEx, and one to run Google/Stack Overflow/debug quirky things off screen. It's much less confusing for your trainees, and far less stressful for you, to solve something on your own and then walk the trainees through how you solved it, than for them to try to follow everything you're trying in real-time.
* I'm not quite sure how WebEx works, but you need some form of group chat room if WebEx doesn't offer that already. A lot of your trainees are developers, and a lot of developers are introverted, and a lot of introverts will feel more comfortable asking questions via chat rather than piping up on a large conference call. Also, providing code samples and URLs orally is awful. Group chat solves that.
* If there are any tools or apps you recommend or require, make clear all trainees are expected to have them installed/compiled before class starts.
* This shouldn't be a problem since it's remote, but make sure all trainees have access to a computer. (You wouldn't believe how many of my trainees have shown up without computers...)
* I've taught anywhere from 3 to 20 developers at a time. 8 or so is my favorite. Any more than than and I highly, highly recommend you hire a TA for the live portions. The TA will be able to help you answer more questions, buy you a few minutes to get coffee and recover your own sanity, and if a trainee ends up with an issue that is halting the class's overall progress, the TA can focus on that trainee exclusively while you push forward.
(This is another reason to charge high rates: it allows you to do things like hire TAs and deliver a much better experience.)
I'm nj@third.io. If you'd like to talk more, I'd love to hear from you.
http://www.cnet.com/news/meet-the-tireless-entrepreneur-who-...
I charge by the day for my CFEngine trainings: USD 2,500 to 5,000.
I also recommend you survey what your competition is charging - don't undervalue yourself.
Is this a distributed team you'll be training?
With that out of the way, I'm going to throw some caveats at you. The idea is not to discourage you, just to make sure you realize the effort that will go into preparing for those 40 hour of training you will deliver and price yourself accordingly.
As a first timer on professional training, be aware that 20+ people to train is a large number. You won't be able to achieve much personal interaction with each student, and you might find a great deal of variance in their backgrounds and skill levels at the start of the course. Be prepared for outliers, at both ends of the spectrum, they can chew through time that would be better spent on topics for the bulk of the class.
You will also find that large firms can be notoriously bad at gauging the needs of their teams, you could deliver exactly what is asked of you by the management without meeting the dev team's needs. Take a moment at the start to gauge the team's expectations, explicitly ask them what they want to get out of the training and try to work some of that into the lessons.
You will have to take some time to learn about the team you will be training: Are they distributed? Do they all work together? Are they already working with the thing you will train them on? Are they building line of business software? Are they being rented out to third partys? All of this will influence what the team and what management expect to get out of you, and therefore what you whould deliver. Be ready to manage expectations from both ends.
Does it sound like a lot of work yet? This is just the start.
TL;DR be prepared for pathology on your first engagement. Charge more.
If you're teaching a group of twenty developers and you're going to make them just 10% more efficient, then guess what. You've just made the company AVERAGE_YEARLY_SALARY * 20 People * 10% == AVERAGE_YEARLY_SALARY * 2 (that's the benefit to the company).
The better question to ask is, how much do I charge for handing the company $300,000 (or whatever it is you're saving them).
10k per person per week isn't out of the ordinary (I don't charge that, but I know those that do, or more), but if it's your first time to the rodeo, 2k per would be much more reasonable.
Doing so moves the focus from selling learning as a service to achieving a framework and how to achieve that as a product. Most large corps I know use SMART goal setting in their annual staff appraisals, which is extremely compatible with this kind of approach goal-based approach to training, and is a nice strategy to turn the proposal from a 'this is what our [client] idea of an hourly rate is' to 'this is what I'm [training provider] giving you'.