Visualizing a Job Search Or: How to Find a Job as a Software Engineer
kellysutton.com
kellysutton.com
The candidate went to all the trouble of engaging with you; you owe them (at the very least) a timely and professional rejection email if you don't want to proceed.
Yes, a rejection letter, because that's what you're doing -- rejecting them. Ghosting is still a rejection; it's just a rude rejection. There is no way to candy coat that, and you shouldn't try. Grow a spine, and write that rejection letter in the kindest way you can.
It's _a lot_ to keep track of and fire off emails to non-good candidates. Especially if you're having applicants apply to jobs@example.com.
Software can solve this problem....
I don't understand how that's hard to keep track of. Even using pencil and paper.
A generic, form-email consisting of
It was great to meet you, and we appreciate your interest in <COMPANY, INC>. Unfortunately, we've decided not to move forward with you in our <JOB> candidate process.
Thanks, <EMPLOYER>
would still be better than ghosting...I've been ghosted by one department and actively sought after with months-later followups from others. I can imagine it's likely the manager had someone in mind for the position but the company's policy required a posting.
And there's always H1-B requirements to fill...
So when you get ghosted, it's not the engineers who fizz-buzzed you who "did" it... and it's certainly not the office manager (and/or "talent specialist") who's doing it. As with everything else a company does, "message"-wise -- it's coming from the top.
It's still bad, but possibly not intentional.
This is actually the most surprising thing I've seen since we started Triplebyte. Originally I'd assumed that every company complaining about how difficult it is to hire engineers, would be moving every candidate through their process as quickly as possible. In practice we learnt to stop working with companies who were too dysfunctional to get back to candidates promptly - even if it's just to let them know they needed a few more days to make a decision.
We'll also often see dysfunctional companies switch to the extreme opposite end of the responsiveness spectrum once they've made an offer and start pushing candidates to make a decision immediately. Better to have been responsiveness throughout the process. I suspect companies still underestimate how much that makes a candidate more positively inclined towards them once they're at the decision making stage.
1) Phone Screens
2) Interview responses (moving to next interview?)
3) Final decisions
4) Negotiation/confirmations of receiving a response to an offer
That being said, and I'm swaying off topic here, candidates should never pause or slow down their job search, no matter how far along they are with a company. A rejection can come in a million forms for a million reasons, and how much would it suck to be back at square one across the board if it happens?
The only lengthy part of the "interviewing" should be the negotiation, and by that point you are actually already kind of hired. Unless you blow it.
Things will be longer the bigger the company is because they have to involve legal and all this stupidity, but early stage YC companies don't get the benefit of the doubt here.
There's this hubris of cultural fit, which is code for "is this guy conformist enough that we can give him an arms length of desk space next to another 50 developers without him flipping?". Its true, cultural fit is super important. But that's at least in part due to the insanity that is software engineer working conditions. Give your people actual offices to perform actual work in and all your culture issues will vanish.
The university I work for has a fairly standardized process for full time hires. We schedule and sit in on all phone screens, individually evaluate candidates, and then promote some of them on to the next step.
Sometimes we're in a position where more people "pass" the phone screen than we would want to bring in for onsites. There's an anxiety in immediately failing people we don't bring in, in case the batch we bring onsite does poorly.
But people would do well to get over discrimination. (in the silicon valley software engineering job market. im not talking about minorities in poor neighborhoods having literally no chance of living the american dream. ok? thank you)
Maybe its illegal, but if you're a 45 year old professional with a family seeking a job where you can be highly effective for 8 hours and then go home and play with your kids, do you really want to join a startup that asks you to be in the office for 12 hours so you can play foosball for 6 and do stupid shit for the other 6?
Maybe at some point you have to somewhat appreciate being discriminated against. As silly as that may sound (because they are helping you stay away from pointless drama)
People who discriminate against "the old" in jobs where experience clearly enables you to do your job 10x better are just nuts. Don't sue them. Pity them. And then move on.
Though the ideal upper bound seems to be about 3 weeks net turnaround (for steps 1-4, altogether) for smaller companies (perhaps longer for monster-sized companies), nearly any time can be "reasonable"... as long as you get back to people by the time you say you will, more or less, at each stage in the process.
It's the "by the time you say you will" part that these companies seem to be having inordinate difficulty holding up to. And what people on the receiving end tend to find to be quite grating to be on the receiving end of, over and over and over again.
Day 0 - Candidate apply
This week - Phone call
Next week - On site interviews
Next next week - Offer letter ready to sign
Of course, we have to be in touch right away after each step to arrange the details for the next step. That means we're in touch within 24-48 hours after each step.
I don't have a Compsci degree to fall back on. I needed to be realistic about my chances getting in to a company. Each company received a crafted, custom cover letter. These were not spam applications.
Also, bootcamp-grad. I chose a shotgun approach. It worked.
EDIT: to clarify, I haven't heard back from 170. I applied to ~300.
Surprisingly though, almost every recruitment company did send a proper rejection email. Internal HR - not so much. On the other hand internal recruitment is much simpler to prepare for. Recruiters often call back mentioning only their company and I have no idea which of the last 10 applications they happened to receive and what the position was about.
I've seen companies fully-contained within 4-person WeWork spaces showing pictures of their non-existant 20+ person team and listing as many or more open positions that don't exist. I've seen companies that list positions that aren't actively looking to hire but want to keep the funnel open in case that 'special snowflake' comes along.
I don't know if it's 'wishful thinking' or something else, but it's fairly poisonous.
Maybe you're more like passively hiring, but I'd still consider them hiring.
They didn't have an actual need for someone and it was all about how many/what type of degrees someone had and from where before they'd even consider looking at a candidate. In one of the cases, when the company did actually hire a person, that person had no work to do -- it was purely a means to justify their ask to investors for more money. We hire the best people!
Some people don't internalize that this is a sellers market. There are orders of magnitude more open jobs out there than there are qualified people to fill them. You shouldn't concern yourself with a bunch of toxic idiots trying to milk VC for a while.
I have to consider that some of the effort I spend chasing what looks like a great job might actually be a complete waste of time with no chance whatsoever.
I've been pretty vocal about my experiences, good and bad, job searching. I usually even like to name and shame and strangely enough it has paid off for me in connecting with the kinds of people I want to work with. I've been happily employed for a year now and have a good network of opportunities available to me.
The "shortage of engineers" meme that just won't die. If this were actually true, one or more of the following would be happening:
1. Qualified people would not be having difficulty finding work
2. Salaries would be increasing and low-paying open jobs would decrease in response to short supply until the market went into equilibrium
While the company isn't as competitive in salaries compared to some other shops in the Bay Area, it is extremely competitive in all other facets including supreme work-life balance, and yet even that hasn't been enough in itself.
So if you're so desperate for engineers, why not hire remotely outside North America, the most competitive market in the world for engineers? I realize it's much more comfortable having everyone in the same timezone, but sure it's preferable to hiring nobody? Also you can probably pay 30% less and still get great engineers.
Of course, it might also be simple racism. Otherwise I do admit to having difficulty explaining why I, as an American engineer, can make >$100k/yr even when working from outside the US while others make a fraction of that.
Whether one particular employer can find workers at some arbitrary rate is not the same as whether there's a shortage, especially if that employer's rate is not in fact competitive.
If having trouble hiring while paying less than others indicates a seeker's market, what would an employer's market look like?
If it really was an employer's market, I wouldn't be getting up to 10 emails/messages/phone calls/tweets/etc. a day from recruiters trying to entice me to leave, even floating compensation up to $400k as inducement to action. I have walked away from exorbitant offers myself. Some of my friends/acquaintances in the industry also have shared similar experiences - the desperation of employers is obvious & almost ubiquitous, and you don't see that sort of desperation on employers' parts in an employer-sided market. You see them leaning in with aggressive tactics to accept what is given, which you see with some candidates that they deem weaker, but not with anyone half decent because the time & money cost of attracting people is significant.
Very few companies can claim to offer it all, but for the rest, they have to strategize as to what type of potential employees do they want to attract. Most cannot compete with the likes of those big companies mentioned prior because they have some negative that those don't have - for example, while the financial industry is known for sometimes paying very well, it also has a negative stigma to a not insignificant portion of engineers, as well as a reputation for poor work-life balance. Government work often comes with good work-life balance and is often well-regarded, but the reputation is also a two-edged sword (i.e. NSA being famed for their use of mathematicians, but also facing blowback after their overreach was revealed), pay isn't as competitive, and the level of bureaucracy is legendary in some cases. Startups/small companies offer a huge amount of responsibility & impact, but also offer varying levels of work-life balance (most are terrible, but some can be phenomenal) & lower compensation than one can often get in the open market with all industries considered. A company can try to pay more to attract the very top quality engineers, but in software at least, it can get very expensive & comes with a massive cost for a business, especially when competing against the very top revenue generating machines. Therefore, if a company isn't at that level, it needs to compete on other areas - it doesn't make sense to compete on the money realm, because that is a game that those big giants win at.
Being a pro-job seeker market is more than about cash. It's about negotiating power due to being able to easily find an opportunity they can weigh yours against if it doesn't satisfy the seeker.
1. Qualified people (ie. know useful tech skills and have actual, demonstrated experience with those skills) can find work. Yes, you sometimes have to go through painful tech interviews but if you're actually qualified it is easily possible to secure an offer
2. Salaries are indeed rising, as nearly any salary survey would tell you. Do you think Facebook/Google/Amazon are paying people hundreds of thousands of dollars a year just for the kicks?
> low-paying open jobs would decrease in response to short supply
That's the one part which is incorrect. If there is a shortage then open jobs should increase steadily over time, which is definitely what's happening.
This is especially true because some companies just don't have a clue. So they'll leave up a bad position for months on end but never increase the pay, meanwhile complaining about the developer shortage.
Both as a hiring manager and an engineer, the developer shortage is very evident. We consistently took a long time to find qualified candidates (despite paying a respectably high salary) and on the flip side I have had no problem at all lining up offers any time I've interviewed in the past few years.
This does come with the caveat that the shortage is by far most acute in senior web-oriented engineers. There's no shortage of eager bootcamp graduates. If you don't have relevant experience on your resume or have crippling anxiety with technical interviews then your results will vary substantially.
1. Compensation not rising to match demand
2. Overly-picky employers who would rather a req go unfilled than hire a less-than-perfect candidate
3. A recruitment process that fails to match qualified candidates with this engineering work
Physics and Math graduate unemployment rates are virtually zero, and practically all of us work in software.
That a lot of CS graduates actually can't do the job may be a pity, but its not our problem. Qualified people don't have difficulty finding work (by definition - if they're qualified, they will get hired).
Shortage of engineers is a meme?
"If you gave us another 100k great engineers we would only hire about 15k of those" - said none of the big 4 ever. They are perpetually hiring and they will absorb any capable engineer who comes their way. You know that. Don't pretend there's a shortage of jobs for qualified software engineers. That's just silly.
How many of them are overqualified for what they're doing and would jump if the market were paying more or if there were better opportunities? You can't say much about whether it's an employer's or employee's market merely by citing unemployment %.
> "If you gave us another 100k great engineers we would only hire about 15k of those" - said none of the big 4 ever. They are perpetually hiring and they will absorb any capable engineer who comes their way. You know that. Don't pretend there's a shortage of jobs for qualified software engineers. That's just silly.
Any discussion about a shortage or surplus of jobs/talent is meaningless without specifying compensation. Many companies would gladly take 100K great engineers at a salary of $20K/year. What if the going rate were $1M/year? Would there still be a shortage of engineers? When the bid and ask are far apart, both sides will complain about how hard it is to make a deal.
A lot of them are overqualified. But they are handsomely compensated. They could do less boring work, but there's less of a market for it.
> Any discussion about a shortage or surplus of jobs/talent is meaningless without specifying compensation. Many companies would gladly take 100K great engineers at a salary of $20K/year. What if the going rate were $1M/year? Would there still be a shortage of engineers? When the bid and ask are far apart, both sides will complain about how hard it is to make a deal.
I made that statement under the assumption of current market rates. Whatever google/facebook/uber/apple/microsoft are paying. Quit pretending that they wouldn't hire more engineers if there was supply. They clearly are willing to. Sure there's some hyperbole to it. But the entire valley + amazon/microsoft could easily absorb another 100k engineers without that event drawing down salaries significantly.
It sounds like you're explicitly committing the No True Scotsman fallacy.
It's also an example of Goodhart's law: the people getting hired are demonstrably most qualified at getting hired, but the correlation between being good and being hired is quite clearly less than 1.0.
If you're good at what you're doing but somehow suck at presenting yourself in an appropriate way, retain an executive coach for 5 hours or whatever..
I know lots of qualified people who went through one or more stretches where they couldn't find work. Most employers wouldn't know a qualified engineer if they saw one.
It's also worth noting that the reverse direction of this false-hope scenario does occur frequently: It's extremely common in our industry for candidates to take interviews with companies they would never accept an offer from just to practice their interview skills for later interviews with companies they actually do want to work at.
I think it always backfires in any case, but most of these people don't have very much, if any, experience running a successful business.
I have also applied to many job offers I am pretty sure were fake, with no actual position behind.
Honestly, that's nonsense.
Send out a terse, automated email to everyone who applied and was not selected. It could just be something like:
"This job posting has been closed and , unfortunately, you were not selected as a finalist. Thank you for applying. We will keep your application on file for 60 days if there is a similar opening."
I would love to get useful feedback from an actual human, but I know that interviewer time is expensive and companies are worried about liability[1]. However, an automated email pulled from an applicant-tracking database is literally the least a company could do and is essentially free.
If they make it to an on-campus interview, having a real live person copy and paste an email also adds maybe ~$2 to a day that's already costing the company thousands.
[1] Everyone says this, but I've never actually seen a court case where a) the company provided reasonable feedback and b) was sued nevertheless.
There's a huge difference between not responding to every resume -- and silently dropping (or prolongedly stalling) the candidate after initial contact has made (sometimes even after an on-site visit). The latter is what is usually meant by "ghosting" -- and really, there's no resource-based excuse for it (given that both parties have already made a very significant time and energy investment by that point). That's what's so exasperating (and to some, nearly infuriating) about it.
Most companies do it.
Actually, the widespread observation is that until recently, "most companies" definitely did not ghost candidates after the initial contact stage -- and after an on-site interview, it was basically unheard of. It's hard to get data, but it definitely seems to be a very new thing.
The "ghosting" is just something you have to get used to as a candidate.
One can get used to anything, I suppose. But by the same token: turnabout is definitely fair play; and as long as companies insist on doing this to people -- they're going to have to get "used to" this shitty behavior being talked about on places like Glassdoor and HN.
And of course, being duly and justly called out by name for it.
Nope. There are many companies and positions who just hire everyone who pass the bar.
More jobs than successful candidates. Yet the companies still suck at interviewing.
but if I as much as have a screening call with a recruiter, unless they flat out tell me "no" I would expect some sort of communication at that point.
This, for me, was the key section of the article:
> I had the luxury of having a few weeks free due to gaps in my consulting schedule. This time block is something that is a rare case in a job search. Performing such an exhaustive search must be nearly impossible if you also have a full-time job.
(Emphasis added.)
The amount of time off required to do this is insane. Is this how most people do it?
Also, I agree that speed of communication is key. I want to be on site within 2-3 weeks if everything is going well. Take much longer than that, and I'll probably either have a job by the time you get back to me, or be too busy talking to people who actually want to talk to me.
The last time I went job hunting, I applied to about 12 places over the course of about 4 weeks. Of those 12: 4 offers, 3 rejections, 5 ghosts (basically anyone who doesn't get back to me within a week of an on-site).
I've been working in software for 8 years in SF and I'm told those numbers are pretty good, but I think there's a lot of variability in hit/miss rates for people depending on luck, professional network quality, and how people market themselves.
What are some good ways to improve one's marketing of oneself to get better results on the job hunt?
1. A company ghosts and the comes back months after (when you already took another offer) and says: "wassup, you still down for that thing?"
2. A company ghosts and comes back a month and a half later saying "oh btw we hired a guy". Yeah thanks I figured it out.
It was "Er... sorry... the boss changed his mind... he went bonkers... that happens regularly, hem... he's... a lunatic. Sorry."
Whether it's worth suing over, is a different matter...
There is a probation period, during which you can be fired in 24h without reason.
Depending on the jurisdiction, The law might force to wait for the 1st day of employment to cancel the contract.
When I was hiring, I always tried to loop people in and say no or scoot them through the process as fast as possible. Better for the company, better for me, better for the candidate.
"Unfortunately we're only able to work with people with legal status permitting employment in the US. We hope in the future to help set up visa sponsorships."
I appreciate that they cleared expectations upfront. I tried to sign up on Hired.com once, after going through effort of filling up their lengthy registration forms, which took me several hours, they conveniently told me that their services are not available in my country.
In the meantime, we're working on making companies more aware of the H1-B transfer options (http://blog.triplebyte.com/gaming-the-h-1b-system-for-good) and the recent OPT visa STEM extenstion (https://www.uscis.gov/working-united-states/students-and-exc...).
Yeah, there's that too. :-(
> I communicated with 23 different companies [...]
> to receive 4 offers to make a single choice
> I was rejected 9 times [...]
I liked the article but with today's hiring procedures I can tell you that these numbers are baby steps. I have spent so much time during the last two months doing technical and non-technical interviews that if I were to write an article like that it would take me days to complete it. To be fair, it gets harder when you are a foreigner trying to apply for a position in a company who wants your skills but that expects you to be 2x smarter to justify the immigration process.
I visit /r/cscareerquestions from time to time and it is sad to read the stories of recent graduates struggling to find their first job or even an internship. If that happens to American citizen with an university degree and fresh knowledge about algorithms and data structures, what can we (non-Americans with rusty algorithmic skills) expect? I would be happy to work remotely if it wasn't because many banks limit the transactions that come from foreign companies or simply don't let you create an account because you are from a risky country.
Never heard of Triplebyte, so I looked into them. According to their candidate FAQ:
"We save you time. ... Most candidates save hours that otherwise would be spent on phone screens. We turn an O(n) process into an O(1) process."
The phone screen is where I can screen the companies, so this system will not work in my case. I reject more companies before getting to any actual interviewing when it is clear our shared goals are not being met. Most companies just want a warm body, whereas I am very specific in what I want.
Fair enough but remember that you may be screening not the company itself but some frazzled engineer who curses herself for agreeing to perform 4-th phone screen a week instead of insisting on writing code. Your impression of the company may be misleading.
Most likely this will be anything but pleasant, but if you are very careful about not accepting VC financing you may try to optimize for sanity... highly functional will come mostly as you learn from your own errors.
One question that I think correlates low with a highly functional sane tech company is "Does your CEO still write code for the product?" if the answer is yes and the company is larger than 20 people, odds are high that the company/CEO is not highly functional.
You know what to do when each of the 3 interviewers of your on-site give a blank stare to this question :D
- How nice are the employees? - What’s the vibe in the office? Noisy? Quiet? - Do employees look happy? - How’s the food? - and so on and so on…
Is this typical?
Its usually our job to deal with the circumstances and to actively change them. We are not "good employees". We call bullshit and we get to call bullshit.
We are not hired to help our bosses achieve things, we are hired to save their asses. We are hired because someone goofed up. We are hired because something went wrong and its our job to patch it up.
We come in with the expectation of getting things back on track. We are meant to blend in with the "regular employees" but we never will, because we are free agents. We can walk away from this job and we WILL walk away if what had been promised does not happen. We will walk away unscathed because we have other gigs in the pipeline anyway.
We do not conform. We come in with a plan, which we communicate in pretty clear terms - with the expectation that the person who hires us will, to some extent, play by our rules. Because that's what they brought us in for.
That's the mindset. In some way, we are mercenaries. What remains is whether the people and amenities are nice.
At my current gig, I'm fixing telecommunications software - highly concurrent stuff. Etching out another 20% of performance is actually important here. Today I've had an email about working for someone who wants to set up a new crypto currency and from someone who needs to port their badly engineered python code to awesome pretty shiny new Elixir code. They all know my rate and its certainly not cheap, but I'm going to reject most of them anyway. The average gig is 9 months but there won't be a week during which I don't have some kind of request in my inbox. And its all done remote. Most of my clients haven't even seen my face.
Whether they've got product market fit is simply irrelevant. I pick the jobs that are intellectually challenging, because that's what I want to work on. Their business logic is irrelevant to me. Their stack is irrelevant to me. If their stack sucks, I'll tell them to switch technologies or I won't be available anyway.
Sometimes I entertain the idea of working for some startup. Getting involved. But the reality is: 40 hour salary with a 60 hour expectation - no interesting work (we need to get this frontend thing fixed so heres your react native good luck not dying of boredom) - cramped office space; and I don't mean "crappy" office space, I mean cramped. Where you can't have a thought without someone being an idiot right next to you for no particular reason, etc. It just doesn't make any sense to be an employee in 2016.
A question, if you don't mind my asking: I'm a little hesitant to start filling the pipeline before close to the end of my current gig. Do you find people are planning months out, or do you have to wait until a few weeks before you're free to start engaging with potential new clients?
Right now. Just be up front. You're no longer an employee, you are running a business. You no longer have bosses, you have customers. Let them know your terms.
Since this is your first one, you should be aware that the companies you work with will want to play this gambit with you where they make it seem like they want to extend your contract and then never actually do it right up until the point where you depend on it. And then they try to gouge you. You need to have options and they need to know that if they want to continue working with you, they have to pay market rate - and market rate is going up the longer they wait.
You engage with clients all the time. Doesn't matter whether you can'T sell any time right now. You are a business. Engage with your customers.
I ran a consultancy for five years and it was fine, but it was always difficult to trudge up new clients and keep the pipeline active and primed while I was trying to juggle the responsibilities of my ongoing gigs. A client converted me to an employee a few years ago but I've been thinking about getting back out there.
Toptal is great but you have to hustle them as well. If you decide to get on toptal, make it your first priority to make sure the recruiters know that how awesome you are.
Gigster I believe would be great but they're not responding and from past interactions it looks like they're way understaffed to handle all their applications so can't comment on that.
I don't get how its difficult tbh. I do very marginal outbound but have people contacting me all the time. I don't even have a linkedin profile because its too much of a hassle to set up.
Maybe I ended up on some kind of list. I don't know. The people I've worked with so far know that I deliver and I guess I'm living off referrals.
I don't actively network, though. I just talk to a select bunch of people on the internet.
I've had bad experiences with Toptal at multiple levels. I don't trust them and I don't think they're worthwhile. I absolutely don't believe they're providing the top 1% of workers, which is what they claim. They use Codility for screening which is an automatic fail imo.
Never heard of Gigster.
As for a network that spontaneously produces new leads, I agree that it's just dependent on the niche and how well-connected your previous clients are. I did get a fair number of clients this way, but the timing didn't always coincide with my schedule. It wasn't a constant stream of new requests every week.
I was mostly focused on local clients, which may also have had something to do with it. It sounds like you're mostly online. Before you got a constant stream of referrals, how did you find your clients? Replying to solicitations on classified or job postings? People coming to you for some pre-existing domain expertise, perhaps exhibited through a blog, social media participation, or an open-source project you've contributed to? Finding people on mailing lists and bug trackers and propositioning them? Just curious how you broke in to this.
The most appealing thing about Upwork is the constant stream of automatically-selected clients. It feels less bad than Toptal to me because there's less direct interference from corporate middlemen ("recruiters") -- I know Toptal provides a rate floor and that 99% of Upwork's clientele is looking to pay wages that are literally illegal in the United States, but Upwork has so much traffic, they can always supply you with someone in your rate bracket (up to like $120/hr, which admittedly is not very high). Don't have to worry about the stars aligning. That kind of thing is comfortable and well worth a reasonable fee (Upwork's fees are unreasonable, but that's neither here nor there for this discussion).
Yes. They've got dealflow, but upwork is complete whack with their stupid screenshot producing antitrust policy and its boring web dev work. I don't work on user interfaces. I sometimes use upwork to outsource user interfaces that need to be built though. When it can be cheap.
> I've had bad experiences with Toptal at multiple levels. I don't trust them and I don't think they're worthwhile. I absolutely don't believe they're providing the top 1% of workers, which is what they claim. They use Codility for screening which is an automatic fail imo.
Toptal has pretty good dealflow. Not going to comment on any other part of their platform. Never had any issues with recruiters negatively affecting my experience.
> Never heard of Gigster.
Not a big loss tbh.
> I was mostly focused on local clients, which may also have had something to do with it. It sounds like you're mostly online. Before you got a constant stream of referrals, how did you find your clients? Replying to solicitations on classified or job postings? People coming to you for some pre-existing domain expertise, perhaps exhibited through a blog, social media participation, or an open-source project you've contributed to? Finding people on mailing lists and bug trackers and propositioning them? Just curious how you broke in to this.
None of the above. I work at the intersection of applied math/physics/SE and am immersed in a couple industries that are interesting to me/I have friends in. The software that I write always generates alpha (finds money making opportunities) - so the questions I get are less of the "can he do TDD? does he know react? can he write async?" and more of the "I have this business problem, can you help me 10x ROI?" variety.
When I turned 18 I got into playing poker online. I was good at that. Soon I wrote my own analytics software to generate more of an edge at the tables. Then I wrote a bot to play the game for me.
I've written a bitcoin arbitrage service when the markets were really volatile back in '12 or '13? And sold that to some loaded guy.
Then I wrote a couple crawlers for sites that people claim are un-crawl-able like linkedin. And I ran an ill-fated startup that I got suckered into.
I basically have wealthy friends/contacts in 3 industries who know whom to talk about when they have optimization problems.
Maybe its wrong to assume that I'm a software engineer. I certainly wouldn't call me that. Math is my game, software is a tool.
> The most appealing thing about Upwork is the constant stream of automatically-selected clients. It feels less bad than Toptal to me because there's less direct interference from corporate middlemen ("recruiters")
To be honest, I could see how toptal can suck for people who offer basic web dev services, but I'm simply not part of that crowd. I have good relationships with half a dozen of those recruiters and they send the interesting jobs my way.
You certainly need to work them. You need to work everyone you expect to generate revenue for you. But once you've done that, they behave.
> 99% of Upwork's clientele is looking to pay wages that are literally illegal in the United States, but Upwork has so much traffic, they can always supply you with someone in your rate bracket (up to like $120/hr, which admittedly is not very high). Don't have to worry about the stars aligning. That kind of thing is comfortable and well worth a reasonable fee (Upwork's fees are unreasonable, but that's neither here nor there for this discussion).
You just have to hustle. If you want to hustle on upwork, hustle on upwork. I'm sure they take less fees than toptal does. To me, it doesn't make sense to get involved with upwork. If it does to you, you should probably work with them.
A couple months ago I observed the deals they had for a while and it didn't produce a single one that I would care to even apply to.
My resume is the opposite of a career.
If you've got skills, just put yourself out there. Getting a contract is a whole lot easier than getting a job. Which doesn't make any sense, but its what it is.
Sites like toptal and gigster can help getting the ball rolling. Gigster will probably not accept you because they pattern match against keywords or whatever. I don't know. Didn't accept me either. Not a big loss in my opinion. They just mostly do web apps anyway.
Toptal makes you solve a bunch of challenges so if you've got the skills you'll get in.
But it did seem like a nice way to get lead gen.
Also would suggest blogging and github projects, especially if you know a niche technology that you want to go deep in.
A good github project that is meant for showing off your skills includes instructions on how to get it started.
For example, if you do something javascript, bundle a minimal server that I can execute on my computer. React.js is doing this pretty well, for example.
No, the main benefit of being an employee is:
* A higher level of commitment from both sides
This has the following ramifications:
* You will learn a domain more thoroughly. If you are hopping between projects very year or nine months, you will get good at picking up domain knowledge, but understanding a domain deeply happens after a few years.
* You will have more opportunity for a leadership role (people hire consultants to kick butt and take names, but rarely to manage larger teams or projects).
* Team camaraderie. You can make great connections as a consultant, but, as you say, there's always the awareness you are a hired gun. Employees on a tram pulling together to build something awesome? The bonding is strong.
* Stock options might be worth something, if you are very very lucky.
* You can gain experience in something new to you, and get paid to do so. This is especially important for less experienced folks. Consultants are paid for the knowledge they bring to bear, and while you may be paid to learn something new, especially later in an engagement when they trust you and just need some tasks taken care of, most of the time you will be paid to work within your specialty, and have to gain new specialties on your own dime.
If these employee benefits aren't of interest, consult away.
This article might be of interest as well: https://bothsidesofthetable.com/is-it-time-for-you-to-earn-o...
* Team camaraderie. You can make great connections as a consultant, but, as you say, there's always the awareness you are a hired gun. Employees on a tram pulling together to build something awesome? The bonding is strong.
People usually are more open with me than with others because there's less of a reason for me to tap into politics or to play games. I'm there to do a job. Whether Jeff tries to pass off my work as his own is irrelevant to me. I'm not working towards a promotion. My loyalty lies with the guy who writes the checks. Not "the company".
Lasting friendships happen and people trust me. They can rely on the fact that I'm not there to take anything away from them.
So maybe a bit of a misinterpretation on your end. People sometimes get a bit envious about the lifestyle, but they're not "afraid" of consultants.
* Stock options might be worth something, if you are very very lucky.
I can negotiate stock, but that's not the point. This is mostly a matter of variance. Do you want to go all-in or do you take the bigger annualized returns in favor of the jackpot? I earn more as a consulting than I would as an employee. That's my hedge. If I want to go for broke, I'll start my own thing. Depending on some whack entrepreneur who may explode any day is not something I'm interested in really.
* You can gain experience in something new to you, and get paid to do so. This is especially important for less experienced folks. Consultants are paid for the knowledge they bring to bear, and while you may be paid to learn something new, especially later in an engagement when they trust you and just need some tasks taken care of, most of the time you will be paid to work within your specialty, and have to gain new specialties on your own dime.
That's the one thing I disagree most about. I generally do not take jobs where I have to do something I've already done. I want to do new things. I guess people hire me because I'm smart, which has already been proven. And they trust me to figure out how to do the things they want done. So maybe in that way you are right. But I don't take boring assignments.
But the most important part is this:
* A higher level of commitment from both sides
I don't like committing to some company. Its annoying. I commit to other things. Like my loved ones. Companies buy chunks of my time to get a desired output. I don't get emotional over them. You pay me to do X. You get X. You decide you rather want Y? Renegotiate, pay me to do Y. You get Y. You pay me for 40 hours, you get 40 hours. You decide that its funny to call me on a sunday afternoon, you get charged the sunday afternoon rate. You yell at me? You're not my boss. You get angry, get a life. I appreciate a certain professionalism in professional relationships.
"Employers" want people to be on call. At no extra cost. You want me to be on-call, you pay the on-call rate. Suddenly you don't want me to be on-call anymore. Good for you. Neither do I want to be on-call. But you've got these employees, if you want them to be on-call, they have to be on-call or you fire them. That's not something I want to be part of.
To each their own. There are lots of great employers in the world, but being an employee sounds not good to me. Maybe its because I don't really "love" software. I'm merely good at it. But when I'm done at work I like to do other things.
The bulleted list was everything to worry about after those foundational goals are met.
I've got an unpublished blog post of 100+ questions to ask before joining a company, and the points you brought up are definitely in there.
What I posted is a sanitized copy of the doc with dummy information. Out of respect for the companies, I won't be posting my copy of it.
Nope.
I just genuinely enjoyed my experience with Triplebyte and Gusto enough to write about it.
Is this not a violation of the equal opportunity act?
This is very visible in large companies where sometimes trying to move within the company you get blocked by the invisible HR quotas. Everyone knows who applied where and what kind of skills they have so it's very hard to hide, but still they won't admit this straight up.
That said though - the very openness with which this institutionalized discrimination is taking place is more than a little annoying. Imagine if they went the other way around :)
As a transgender individual, I've learned to pre-screen the companies I apply to based on whether I think there's a risk the company will discriminate against me (either in the hiring process or after that). Location is the main factor I consider along these lines (no North Carolina employers for me).
Somehow I can then overlay tagging for projects but it seems doable
I actually built exactly this during some downtime, and you can sign up: https://personal.network
I am planning on using the infrastructure for this as the base example for a book - so I am afraid this is going to become a duplicate project - but I hope it will be fun.
Just need to get a few weeks free ...
Once you have a few years of software dev experience or even less jobs just come to you (I love recruiters .. use them to get the best deal).
If your smart with each new job you can give yourself a nice/big raise. Like 20 to 40k more with each new job especially govt. contracting gigs and at the big silly valley tech companies too.