I don't necessarily agree with all of this advice. Yes giving talks, having a blog, etc. help but they are a medium to long-term play and you have to wait for leads to discover you or be referred to you. You don't have much control over when this happens, which is what causes a lot of the feast and famine cycles.
I have had success just directly reaching out to companies I wanted to work with. This meant I was at least proactively putting myself in front of them, instead of hoping they find me or remember me.
Came across this comment from another thread [1] that breaks it down a bit:
2. Focus on smaller to mid-size companies (large corporations likely have the tech team and contractors to cover almost of their needs)
3. (Optional) Search for each company on Linkedin and add managers with relevant roles (VIP of sales, project manager, marketing manager, etc.). The goal is to familiarize them with your name so they're more likely to open your email (step 5).
5. Reach out to the most senior person with a relevant role at each company with a personalized 1-on-1 email.
The key here is to review their website and business and share 2-3 ideas of what you can them build or fix (if there are any glaring issues or vulnerabilities). They may not necessarily use your ideas but the goal is stand out and help them understand how they can put your programming skills to use. Here's a template you can reference: https://artofemails.com/new-clients#developer
There are a lot of businesses out there whose teams don't have the capacity to build everything so they would be keen to have a reliable freelance programmer help them bring some features or projects out of backlog.
>Yes giving talks, having a blog, etc. help but they are a medium to long-term play and you have to wait for leads to discover you or be referred to you.
Those things can definitely be part of a strategy and a lot of (but by no means all) successful consultants are known from speaking/blogs/books/etc. But it's also easy to slip into patterns where you're spending a lot of time and at least some amount of money for random generic exposure without any real sales/marketing strategy connected to it.
> 2. Focus on smaller to mid-size companies (large corporations likely have the tech team and contractors to cover almost of their needs)
Another aspect of this is that large corporations have pretty byzantine processes for hiring/vetting vendors. A freelancer acting as a sole proprietor or single-member llc raises risk factors with being classified as an employee, and will likely have to get routed through a third-party staffing firm for legal coverage. Which adds friction and cost to hiring you. A multi-member llc or incorporated entity, however, can sometimes be easier to get approval for.
You bypass all of those shenanigans by focusing on the small and mid sized companies first.
If a decision-maker at a large corp wants to work with you, they'll find a way to cut through the red tape.
When I consulted for a multi-national telecom company, the "paperwork" was easier to go through than for some startups. I filled out one form, sent my W-9, and configured auto-invoices to go to a designated email address.
As the scope grew and my invoices reached a certain number, they asked me to fill out one more form. That's all.
As you said, every capable manager learns how to work the system for when the situation warrants it.
I currently work (as an employee) for a marketing agency doing analytics consulting work, and we're frequently used as a backdoor to get around internal controls, be it hiring specific subcontractors or unapproved technology. Because the SOW that allowed for (and specified) that passthrough cost gets approved by their legal team, it's an unofficial way for many of our clients to both stay within the lines while simultaneously bypassing internal roadblocks. A particular favorite example of mine was helping a client swap out their janky WAF with Cloudflare, and using Cloudflare Workers to do some magic header rewriting to solve a longstanding issue of theirs. It solved a business-impacting issue that had been plaguing the marketing team, and the client's networking team was super excited to work with me on it as they'd been wanting kick the tires of Cloudflare but couldn't ever get it pushed through.
That said, the situation I mentioned in the above comment is typically the official process at many Big Corps (at least in the US, where the contractor vs. employee classification is a very big deal[1]). Some Big Corps are less risk averse, and virtually every Big Corp has tribal knowledge among the management on how to get things done when they need to. But you can generally avoid the issue entirely by focusing prospecting efforts downmarket at smaller enterprises.
There's quite some overlap, but generally a consultant is more specialised and has a higher billable rate and works on shorter term projects than a contractor.
e.g. my company currently has a couple of Navision consultants doing integration work for our invoicing system. Once the project is done they'll probably leave. I imagine they bill a lot per hour. Contrast to me (contractor) working on multiple projects, and I've now been there for 1.5 years.
Contract workers are "contractors". There is a clear deliverable and the worker produces it.
Consulting is the practice of engaging a business/org/lob to address a larger, less clear-cut problem. M&A is for M&A Consultants who specializes in acquiring and merging. Out of the merger may arise a unit of work to be "contracted out" in cases where timeline and capability are out of sync.
Can you consult under contract? Sure, but being a contractor doesn't automatically make you a Consultant.
There is a gray area but typically you would hire a contractor to address a bandwidth issue and fill an already well defined role in your org. You would hire a consultant to address a capability issue: they will typically know more about the area than you do.
I have had success just directly reaching out to companies I wanted to work with. This meant I was at least proactively putting myself in front of them, instead of hoping they find me or remember me.
Came across this comment from another thread [1] that breaks it down a bit:
1. Go to https://trends.builtwith.com/framework to find websites that use the tech stack you specialize in.
2. Focus on smaller to mid-size companies (large corporations likely have the tech team and contractors to cover almost of their needs)
3. (Optional) Search for each company on Linkedin and add managers with relevant roles (VIP of sales, project manager, marketing manager, etc.). The goal is to familiarize them with your name so they're more likely to open your email (step 5).
4. Find the email format of these companies with https://hunter.io/.
5. Reach out to the most senior person with a relevant role at each company with a personalized 1-on-1 email.
The key here is to review their website and business and share 2-3 ideas of what you can them build or fix (if there are any glaring issues or vulnerabilities). They may not necessarily use your ideas but the goal is stand out and help them understand how they can put your programming skills to use. Here's a template you can reference: https://artofemails.com/new-clients#developer
There are a lot of businesses out there whose teams don't have the capacity to build everything so they would be keen to have a reliable freelance programmer help them bring some features or projects out of backlog.
[1] https://news.ycombinator.com/item?id=20971098