Consulting Chronicles #4: Qualifying Leads

Rather than make the typical lateral developer move to learning a new language, runtime, or IDE, I’m instead trying to bring in more business. What I want to talk about today are my challenges in doing so regarding qualifying leads.

Introduction

Early in the year, I knew I was done with freelance, and working with other consulting firms. Freelance doesn’t make enough money, and working with other firms prevents you both from doing what you want to do, as well as making more money. I could either build my own firm, which required a ton of branding & marketing work, or just join an existing one. There are pro’s and con’s to each and after weighing the options for about a year, I just joined Web App Solution as a partner for a year to see how it went.

I figured, even without doing a marketing push on my blog, Twitter, and speaking engagements, it was a shoe in to more, larger engagements. My assumptions were WASI already had an existing client base I could tap into, having 3 additional Flex + Blaze/LiveCycle developers associated with me exponentially increased my value to clients, and I could leverage my existing brand to enhance both.

It hasn’t worked out like that at all. The recession from the fall of 2008 is still in full effect. Back in 2006/2007, I’d have 4 clients I’d court, and then pick 1. Getting them to sign a SoW was cake; I wanted them, they wanted me; it was just the formalities on getting a number we could both agree on. Last year, and this year, I’ve lost count of how many clients I’m courting. It’s gotta be in the realm of at least 20 who are worth pursuing, and tons more who aren’t, yet may pay some money in between the larger engagements. That, and my expectations for engagements are higher. As a company, we have a lot of value from a resources, tax benefits, and experience perspective. We can charge more for that value.

Additionally, the type of clientele I target are very different from the clientele I targeted when I was freelance. To summarize, I used to target Flash engagements that lasted 6 weeks or less (often just 2 days). When I got into consulting, the firms I used to work for would usually target engagements, often Flex, that lasted 2 months, 6 months, to 18 months. The 2 month gigs often cost more for the client, but didn’t have a lot of consultants on-site, and thus weren’t very profitable. The 6 month gigs were either small engagements to help a mid-size company get started a project, or more often to save their failing project. The 18 month gigs were often larger enterprises who wanted to create some B2B product, and needed a partner to do so. Meaning, they didn’t the in-house development resources, and thus hired the firm.

My firm targets the same types of 6 and 18 month gigs. To get those kinds of gigs, however, is really hard. Companies are sitting on $2 trillion dollars in the USA, and a lot of the banks have $1 trillion to lend; all aren’t spending/lending it to grow their business because our Congress is trying to pass some new bill to replace the failed Sarbanes/Oxley. The 250+ new rules has them scared, and thus they are holding back doing anything until I they know what our crazy blue gov’t plans to do. The 2000 page document that no one in the Senate has read, has 150 page summaries being sent out to various companies by their lawyers. Yes, I’m aware that “summary” is the incorrect adjective to utilize for “150 pages”, but it is what it is. Also, given my blog word count, I’m aware I’m not at liberty to judge (too harshly anyway).

Thus, I’ve had to work extra hard to ensure the leads (potential customers) I’m dealing with actually have money and can afford my company’s services. Once that’s complete, I have to barrage them with questions to ensure I understand what they need, and my company is in fact what they need. Third, I then have to draft some documents, usually a proposal, to ensure I’ve documented and shown I have a more than adequate understanding of what their company needs my company to build/fix/help them with. Fourth, this needs to be formalized into an SoW that ensures we’re protected, the client is protected, clearly states what the client will get, and ensures we get fairly compensated for what we’re doing. Fifth, we need to close the deal. I don’t want to do any of that, however, unless I’ve ensured the potential customer has any potential, and thus is worth spending time on.

I really really really suck at those things, hence this blog post explaining what I’ve learned and what I think I don’t know, as well as what others have advised I do.

Qualifying Leads

Qualifying leads means ensuring that those who contact you have money, have valid work, and they are worth talking to. Just because someone who emails you for a Flash job has no money, and no valid work doesn’t mean they aren’t worth talking to. I’ve learned a lot about our industry just talking to clients, getting to know them, learning about what they are working on, their perceived challenges, and who they know. These are valuable networking contacts, and sometimes gateways to future work.

That’s the exception to the rule, though. Your gut can quickly tell you if someone over email/the phone is a client you want. While there are a lot of exploratory things you can look for, I only want to know 3 things before I spend any time investing more time than a quick phone call/email reply:

  1. How long is the project?
  2. Do you have money to fund the project to completion?
  3. Am I and/or my company a good fit for the project?

Project Length vs. Sales Cycle

In the past years of doing freelance and consulting, I’ve found you can spend a TON of time on qualifying leads if you’re not careful. While sometimes this leads to good networking contacts, as well as helping your fellow contractors/freelancers pay it forward by referring clients to them if you’re busy, you also lose a lot money. As a freelancer, the only way to make more money is to raise your prices or increase your hours. Freelancers often don’t really have high overhead costs, so you can’t reduce overhead. Thus, time spent talking to clients to get work is time NOT spent working on billable hours.

Incidentally, this is one of the reasons I specifically try not to do any Flash work anymore. The length of those projects, 2 days to 6 weeks, is significantly less than Flex projects which last 2 months to 18 months. Sometimes you actually spend the same amount of time talking to a client to get the ball rolling on the project which significantly cuts into your margins (aka, profit made working on the project minus how much time it took you to get the client to let you start working on the project). If I’m going to spend 2 total weeks courting a client when it only leads to a month of work, that’s pretty costly.

What I’ve noticed is that a lot of Flash freelancers tend to have many clients going on at the same time. The churn and frequency of clients is very high; this offsets their down time. That, and Flash projects have high frequencies of intense activity, and then die off for days at a time, usually as the agency waits for a clients feedback. This works to the Flash freelancer’s advantage to arrange their schedule to make multiple clients work. Additionally, there are federal laws that ensure freelancers can set their own hours (although I’ve yet to meet a client who gives a shit).

Bottom line, you want the shortest sales cycle (time it takes to get the client to sign your contract, or you sign theirs, or both so you can actually start designing/coding) with the longest amount of work. Any downtime between gigs is time you aren’t making money. Charging $200 an hour doesn’t mean much if you only work 3 month out of the year because it’s so hard to find clients who are willing to pay that much. For some people, that’s actually fine.

Do They Have Money?

If a client doesn’t have money, they are usually wasting your time. There are rare cases where a client is actually putting feelers out; this could be a director at a medium to large company, or an Entrepreneur who is doing recon before he talks to his investors. Additionally, it’s not as black as white as having money or not; some don’t have enough, and maybe you can work something out. You need to have a clear idea of what you charge. That topic is too large for this post, but I’ll let you know how I operate for context.

I believe in creating high quality software with a high quality team, and thus charge for that. I don’t compete on price. I don’t lower my price to score a deal because a client thinks I’m expensive. I know what my competitors charge, and I know I’m one of the best, and thus price appropriately. There is a major problem in our industry right now with Flex and Flash work sometimes bleeding into each other. This includes a LOT of factors that muddy the waters, and require a lot of education, re-education, and clarification that you need to do with clients. Some of it is subjective, too, because there are a TON of people who do compete on price right now in our recession, and can give the perception that your points aren’t valid.

“I can go to Best Buy and buy a laptop for $300 right now… why the heck would I buy a $1,500 Mac?”

You don’t see Porche lowering their quality and price just because we’re in a recession. Neither do I.

Regardless, common problems include pricing Flex projects as Flash projects. A lot of programmers have flocked to using Flex and Flash Builder. While 5 years ago, most of us would of used Flash to build a Facebook widget, nowadays a lot will use the Flex SDK. This causes 2 problems. First, you often get high caliber programmers put on low caliber projects that do not utilize their full skill set. Building an Enterprise RIA is most often done utilizing the Flex SDK by software developers. A lot of smaller scale Flash work is now more often more easily done using the Flex SDK, but the price point for such work is still in the low caliber, “quick git-r-done” programmer range. Additionally, the time estimations for such low caliber work are often geared towards a shorter shelf life with consumers often use the tools, not clients who have a feedback channel. Thus, the deadlines, and thus quality of code, are significantly lower because they can be. This leads to extremely short, non-moveable deadlines.

This goes counter to what most Flex Developers who build Enterprise RIA’s are used to; long deadlines, mostly negotiable because of Time & Materials contracts, with good quality code. There are a lot of up and coming Flash Developers who utilize Flex for some of these projects, and thus helps create additional confusion on why one person use the Flex SDK is $30 and hour, and another is $80; when they effectively “doing the same work”. *face palm*

If you are one of those Flash Developers, this is fine. If your’e a Flex Developer, you often have to ensure the client even gets Flex. Most real clients don’t care what technology you use. However, Design Agencies service a completely different clientele than software shops/consulting firms do. As such, you need to ensure the lead on the phone/over email is talking about a “true Flex project”. Otherwise, they are doing a Flash project with Flex, and their rate expectations will reflect this. This means they’ll often be WAY too low than what you were expecting even if they go on about “Flex consuming SOAP web services”.

Another common client I get is the eff’d one. Their developer went AWOL, their team doesn’t know what they are doing and need mentoring, or they are slowly realizing they are getting screwed over by another company and need me to confirm it. If they are a big company, they’ve actually often factored this into the budget, or can easily get these budgets approved very quick. While it sucks that its’ easier to get bling approved to cut your losses than it is to help increase your gains, my consulting career has confirmed this with a lot of large companies. However, every so often I get a company who’s eff’d, or they might not even know they are eff’d, and do NOT have the budget to get themselves out of it. Sometimes they do, but by hiring a $30/hr miracle worker. Consulting in bad situations is bad enough, that’s why you charge for it. Consulting in bad situations where they client cannot afford it are situations I don’t put myself in. While it’s hard to get the true scope of death-incarnate over the phone, it’s pretty easy to get the client’s background and understand if they can fund the rescue operation or not.

Keywords for me include, but are not limited to, the following:

  1. 2 week project
  2. coder is almost done, but pulled off on another project
  3. we’re almost done, but this one feature is killing us, and we’re not sure how to do it (usually means someone who doesn’t know Flash Player capabilities sold their client on something that they couldn’t do, or couldn’t afford)
  4. we’re an design agency
  5. Flash widget
  6. our game is having a few problems

I could go on and on, but all of the above basically mean “we can’t afford your services”. A 2 week project isn’t profitable unless I can ensure 20 of them come in exactly at 2 week intervals, and I don’t spend months trying to line them up this way.

If the coder is almost done, but was pulled off onto another project, it means the company is small, or doesn’t have the resources to tackle larger projects, thus they need you for staff augmentation. I’ve seen a few rare instances where Flex projects have this happen, but pulling the main developer off of a 6 month Flex project isn’t smart at all, and there typically isn’t just 1 Flex developer. Thus, it’s a Flash project, under a deadline, you’re left beholden to that developers’ code, usually not using best practices because the company is more focused on getting it done, on time. Software isn’t done “on time”; if you think it is, you’re not building software, you’re building some short shelf life Flash project for a client on a fixed budget.

The “this last feature we need a heavy hitter on” usually implies either something that shouldn’t have been sold to the client in the first place, or a wrong approach. For the latter, sometimes you can often knock it out in a day, but 4 hours of back and forth with the client for 8 hours of work is extremely unprofitable. This can get worse if you actually do a good job, and they start expecting you to fix their technical debt. While more hours are nice, if you only budgeted a day for the project, it gets complicated to fit into your schedule.

“We’re a design agency” means they’re used to getting Flash contractors for $30 to $50 an hour, thus your software developer rates aren’t going to fly. Worse, most companies/firms charge more for shorter gigs because you have to take resources off of other projects to help the client with their shorter, less flexible project. This has a major cost, and thus you factor that into your price. This, in turn, makes agencies often get a more incredulous look at your price. Bottom line, they want a Flash freelancer, and I’m trying to provide them a resource from my company. Wasn’t meant to be.

Flash widget. I don’t know many Flex coders using Swiz, Continuous Integration, and attempting to master TDD in their SCRUM process who build Flash widgets. Thus, you’re often left with a really small budget, that’s fixed, that’s already coded, on the timeline, and you’re beholden to that alien workflow. Not going to work.

Our “game is having a few problems” is often the worse. Games are actually some of the most challenging things to code. In Enterprise architecture, you often have a long history of patterns and processes to cull from. In games, you have to have good knowledge of algorithms, specific design patterns, and a good breadth of technical understanding of how the Flash Player works. If a client is calling you to help them fix this, they should of called you in the first place. I’ve lost 2 game gigs last year where they ended up calling me back to help them fix it; by then I was deep into a gig, and cursed myself for my lack of sales ability. I don’t like when clients get bit by the obvious, getting what they pay for, but I also don’t like when I would of saved them, but am not given the opportunity to do so. Gaming architecture is often more tightly coupled for performance reasons, and thus is way harder to fix. Combined by the fact most games are done in agencies on fixed budgets with fixed deadlines, it’s just a lose lose situation.

As you can see, making sure leads aren’t looking for a Flash freelancer is hard. Once Flex seeped its way into smaller Flash projects, it made the perception even worse. A larger majority of the “gigs” I’m filtering out are those above. I’m looking more for “engagements”; longer term Flex projects that are for building software for companies.

Is My Company A Good Fit?

The last filter for leads is confirming my company is a good fit. While a client may have settled on Flash, oftentimes I can teach them about Flex and we go the right route. However, if they have their heart set on a custom PHP/Python back-end, it’s more difficult to sell my companies services. My dad would say, “If they ask if you can do PHP, you answer that yes, you can do PHP”. I know PHP, and I’m sure my fellow partners do too, but we specialize in Java. That’s not just a preference, but Java tends to exist in the real of larger Enterprises. There are some, yes, that do PHP… but the clients who provide the longer term Flex gigs use Java. Back in the day, you didn’t invest in Sun servers because they were 10 times what a LAMP stack costs because you were dumb; it’s because it was WAYYYY easier to get Sun/Java consultants than LAMP consultants. If you’ve invested half a million of your company’s money into a project, and no one can help you fix it when it breaks, you’re screwed. Thus, double the budget, and ensure it’s a well known tech that you can hire consultants on in case things go south.

Thus, usually by mentioning something other than Java for the back-end, that’s usually my first indication we won’t end up working together. While both PHP and Java have a lot in common in the open source world, if they’ve invested in a LAMP stack, they are doing so for cost reasons (most anyway). Most large companies I’ve worked with do not care at ALL about cost; they care about making money. If their costs are high, they focus harder on making more money to cover those costs. I’ve seen a lot of good businesses run on LAMP, but they often aren’t the ones financing long term Flex projects. Thus, middle-tier technology choice is often my first clue.

Another is vibe. Does the client sound like someone I’d want to work with? In freelancing, you can be way more forgiving. If the client yells at the designer in front of you and makes her cry, you can usually hold your tongue, knowing you won’t have to work for that mean person anymore who doesn’t respect women in 2 weeks because you’ll be done. For Flex projects that tend to last months, even a year; you’re basically entering a long term relationship. You really need to ensure you both have the same set, or at least mostly common, beliefs. If the client is more interested in getting it done than doing it right, I actually respect this because they believe in making money. Clearly they respect the craft because they are still talking to someone like me who believes in finding that middle ground. Now, keep in mind Jesse Warden is focused on quality first, money second. Others are focused on money first, quality second. It seems trivial, but when this forms the basis of your belief structure, you can get widely different responses on what client is worth forming a relationship with.

For example, if I can tell it’s going to be a staff augmentation job where you’re placed inside a huge company who doesn’t mind if you produce nothing of value for 9 months, most rational company owners would definitely move forward, and ensure more developers could be put on the project. Once you take your cut, you ensure a significant amount of revenue flows your way, AND the risks are low; win win.

Not for me. I don’t want to spend 18 months of my life producing no value for my clients. I didn’t invest 10 years of my life, 18 hours a day, every day honing my craft only to waste it warming a chair, judging the previous vendor’s code base and doing nothing to change it.

That said, I’ve had to lower my idealistic expectations a bit. A lot of large companies who fund the engagements I want to be on often DO want me to produce value for them, they just don’t know how, and it’s just REALLY hard to get message across over a phone call. That, and some of these larger companies don’t run as a dictatorship, and it’s harder to get things done in a democracy.

My dad the salesmen says, “You need to ask them questions.” I’ve taken this a step further and asked them the same questions twice. This can give me insight into their true motives. Some clients really want you to come there, make bling, and help them create awesome software. Others want me to work for free, or at least do the discovery phase for free. The challenge I have is discerning between what the client needs to be educated about, and what they truly believe, and where we can meet in the middle to form a working relationship.

I’m still not sure what’s a good fit, but so far my criteria of ensuring they having money, paying for the discovery phase, and signing Time & Materials contracts is good enough so far; weeds out 90% of the non-valid ones.

Conclusions

I’ve got the initial pitch down. I listen, and ask a ton of questions.

The guys I work with are better at the above than I am. They are, slowly, working with me to better understand who I should focus on, how, and how their SoW formulation process works (because mine clearly doesn’t scale to the Enterprise).

However, because of my personal brand and my vast network, I have an easier time of getting a plethora of leads. Sometimes a hand off isn’t practical, and I need to feel them out directly. Sending a bunch of $30/hr, 2 week, Flash gigs to my partners is just a waste of time. I end up doing a lot of legwork talking to clients, feeling them out, and qualifying them as potential customers. I’ve still got a lot to learn, and feel like a budding AS1 developer.

Another thing that’s extremely frustrating is that my personal brand right now does NOT reflect the clientele I want at all. The honest, edgy, and high strung Jesse Warden is not what Enterprise clients are used to. I’d argue that’s what you need to get anything done there. Once I’m in these companies I can work my magic. The problem is, I’m seen as the medicine they don’t want to take. I’ve had 2 different salesman from a former consulting exclaim how they’d love to have me on a project, but they don’t see how I’d fit. They’ve never seen me on-site with a client, in business attire, having a calm meeting with them working through their issues. What they see is me at conferences rousing with my fellows in the industry, speaking at conferences being “me”, and giving honest accounts of how I do things.

That works great in the freelance game, and even in the consulting firm game, but not in the “I’m my own company” game. Leads keep coming to “jessewarden.com” and contacting me as Jesse Warden vs. webappsolution.com and contacting me as WASI. We’re in a huge rebranding effort right now which I believe will help. Still, it’s effing frustrating.

Tom Link from Universal Mind once told me:

“You don’t hire Schematic to get Schematic; you hire Schematic to get Danny Patterson. Just because you hired Schematic doesn’t mean you get Danny Patterson”.

I’m not sure if it was Danny Patterson or not, but that’s not the point; the point is, I know I’m sitting on a gold mine with my brand, but I’m not sure how to leverage it to make more bling. Many people have been very forthcoming with advice, but none of it seems to work, or I’m just doing it wrong. Many businessman who already make money in Flash/Flex without coding in Flash/Flex, and getting others to code for them, have told me I could be infinitely more rich than they were if I just leveraged my name to bring in business. I’m not ready to do a marketing blitz on WASI just yet; we’re not ready, but I’m not sure what it would do if I did?

At this point, I’d argue that I could only do that doing Agency work because right now, all the Flex clients are either in Manhatttan’s financial sector, or through the magical, and elusive Adobe Professional Services gateway. If I want those types of clients, I’ll have to start watching my mouth, redesign the format of my blog, and start playing the game differently; “clean up my act” as it were. I’m not yet convinced I need to do that.

However, I’m a little frustrated I’ve spent years curating (buzzword bingo, WIN!) my personal brand only to have it cap out at some dollar amount. Eff that. I recognize if I want to make bling, I’ll eventually have to stop coding, and get others to code for me. Fine… but right now, I can’t seem to score the bigger clients. I know we’re in a recession, and even if the big clients have money, they won’t spend it. Those who typically just get a loan now, can’t. I get it, I really do; I recognize I need to use context in understanding the current economic climate and it’s affect on rates, and frequency of work. Our client sales cycles have tripled in the last 2 years because of it. Clients still are signing, it’s just taking longer.

That said, people still buy Porches during the recession. I just want to know how to get them and stop wasting my time with these damn recruiters that never give me anything of value, nor these small potatoes Flash gigs. My dad gets mad when I ask him advice for this, and threatens to start working for me. I don’t work with family. However, at this point, I’m uber close to start focusing 50% of my attention on hiring a salesman, because this is ridiculous. Maybe it isn’t ridiculous, and it’ll soon be great, it just sucks now cause I suck at it. People on Twitter have suggested I’m great at scoring the lead + the initial conversations, I just need to hire a closer. :: shrugs ::

9 Replies to “Consulting Chronicles #4: Qualifying Leads”

  1. Damn you type a lot. Always a great read. Look forward to meeting that personality in person some day.

    One of the greatest things that a company I worked for ever did was raise their rates. We went from making $ to making $$$ and working half the time in a couple of months. People stopped expecting us to work for free (and we stopped doing it). YEARS later I remembered that and the same thing happened to me personally.

    But (perhaps fortunately) I haven’t been able to stay IN the contracting gig for quite a few years now. Companies get greedy with my time and seem to want to keep me. The money isn’t QUITE as good but the hours are great and the ulcers have never been better.

  2. Nice read, but your distinction between Flash and Flex is a bit different from what I experience. I have done both 2 day Flex jobs and 18 months Flash jobs, and while Flex projects might be larger on average I cannot agree with calling a small project using Flex for a “Flash project with Flex”.

    If the client wants a simple banner done and thinks that he needs Flex because he heard thats the cool thing right now, I will tell him that I don’t make simple banners, and that Flex will not bring any benefits for him.
    If he wants a simple form-based application, I will not use Flash because it’s a simple application that can be done in a couple of days, since it’s even faster to do with Flex.

    Flex is simply a framework, and it’s not always beneficial on large projects and sometimes beneficial on small projects. For certain applications it can speed up the development process, and sometimes it does not bring much benefits at all and just bloats file size.

    It’s like trying to separate Cake and PHP developers. If you are a decent PHP developer you probably know Cake, and if you are a decent Cake developer you obviously know PHP. In my view both are PHP developers, and if they are any good they will see when it’s beneficial to use Cake for a certain project or not. And while size of the project can be one factor in that decision it’s certainly not the only one.

    Basically, the distinction between Flash and Flex developers seems artificial to me, and personally I would rather use the term “Actionscript developer” since I do both Flash and Flex depending on the needs of the project.

  3. @Leo,

    I’d have to disagree with the distinction between flash and flex developers. I know quite a few flex developers that have come over from the java world. These guys are totally lost in the flash authoring environment. I came to flex from the flash world, and so can incorporate both. There may not be a distinction for you and I, but there definitely is a distinction.

  4. @Robert
    I agree that Flex attracted a new group of developers for the Flash platform. But I think that is not so much due to Flex as a framework, but more due to Flex builder as a tool. Even if not all developers are comfortable with using Flash for authoring, I would think that any decent Flex developer is capable of doing an AS3 project with Flex/Flash Builder.

    I’m not saying that it’s incorrect to generalize and attribute different qualities to someone calling himself Flex developer as opposed to Flash developer, or that Flex projects don’t tend to require more time and skills. I’m just saying that on a technical basis that generalization does not make a lot of sense.

    It becomes a bit annoying when clients insist on using Flex in cases where it does not bring any benefits to the project, simply because they have been fed with a generalization that makes them believe that using Flex automatically makes the project more serious. And if I as a developer would have limited myself to only going for Flex projects I would have missed out on some very large and interesting projects.

  5. Fantastic read. Your fearless merger of personal and professional personaes is admirable.

    -Sam
    sam [at] RivelloMultimediaConsulting [dot] com
    BIZ: @srivello
    LIFE/BALANCE: @nowandtherefeed

  6. My danger keyword is “just” as in ‘I just want…’ or ‘You just need to …’.

    This almost always means the client does not really know what they want or how much it should cost.

    Great post.

    Erin

  7. @Robert, I agree on the not all flex developers are good at flash. I actually work with a flash designer that will ask me to come over and code him little things like mouse overs, dynamic tweens , etc every once in a while. Even though I consider myself a Flex expert, that doesn’t mean I could build an entire site in timeline view….. but I could proabably write it from scratch in actionscript just using the first couple frames. ;)

Comments are closed.