We have openings we can't fill because we're specifically looking for "nerds" (those who actually do live, eat and breathe code). And I've got a similar CV with the exception that I never left writing software (I did give up on hardware development).
It's funny you mention that. My hiring success (in terms of impact the new hires made) went way up when we stopped wording job postings using traditional enterprisy language & bullets and instead posted much simpler "hackers wanted" at the local universities. Note: this was in Mexico, not the US, though a handful of the folks I recruited there have gone on to work for SV startups. I feel obligated to note one special case because I still feel a little hurt by it and consider it poaching. (Gbox) http://www.gbox.com has 5 of my former employees (3 devs, 1 SQA lead, 1 UI/UX) out of their total staff of about 20-25.
When you lose 5 people to the same place that's usually from insider recruiting. A lot of companies use No Raid clauses in both employee and client contracts specifically to prevent that type of thing.
If you want to go work somewhere else, that is totally up to you but I'm more than allowed to have a policy stating that you're not allowed to recruit away my entire staff because that destabilizes the entire business, makes the business unable to meet it's contractual obligations and in a multitude of cases can jeopardize the jobs of everybody who is still there.
I recently left one company and joined another, and am trying to convince all my former coworkers to apply here as well because I genuinely think it's a way better place to work.
If you can't compete on the labor market fairly, you deserve to lose employees. Policies like the one you describe are just a market inefficiency that doesn't have a real justification for existing (outside of your own interests).
If a company employs 20 people and 5 of them are programmers without which the company can't function, one leaves and recruits away the other 4 to go work at the same place that means the remaining 15 people are out of work.
Business owners have a lot of people's livelihoods at stake. It's about a lot more than just how much more another company is willing to offer you. That might not matter to you, but that's also why you get to see the policy before agreeing to work at the company.
If coming to work at my office and having the flexibility to recruit away all my staff is important to you...then you don't really have to sign the contract. If you do sign the contract then you're agreeing to the terms. It's not rocket science. Fair policy is that you get to decide whether or not to abide by it before I start paying you. You have the right to decide that policy isn't okay with you and not take the job. Nobody forced you to sign the contract and take the job. If it's a market problem, then I will eventually lose all of those employees because they will have plenty of other choices if they aren't happy working there anymore.
Or to spin this around into the language that you used, policies like the one I describe exist because a lot of people only have their own self-interest in mind and part of my job is to have the interests of all of my employees in mind.
Anti-raiding policies seem to stand on dubious legal grounds (that is there is no consensus with some places in the US prohibiting) and most often only include the solicitation from direct competitors to the business, not just other companies in general.
I'm guessing there was a reason they all up and left. And quite frankly, it's not my fault that you have a bunch of people who want to leave. The stability of your business is not my problem.
I'm fully aware that this isn't a popular answer, but it is reality.
This is anecdotal, but I've had an employee leave when she was paid 3 times what I made and given almost full autonomy. She hired away all of the staff at a branch office except a woman dying of cancer and another who was about to move out of state, then took the entire set of clients with her. This was an actual non-compete situation that nearly cost 13 other people their jobs and nearly bankrupted us 6 times over the next 2 years. We took on more debt while trying not to go under to avoid having to fire people who didn't deserve to lose their jobs over a crappy situation.
There are some people who will be unhappy regardless of what you do for them. In that particular situation, I cannot imagine anything else that we could have done for her. Some people are just self-centered and oblivious to the reality that their actions have consequences.
Yes, you better believe the stability of the business isn't your problem but it is mine and No Raid clauses exist primarily to prevent the actions of a few people from affecting the lively hoods of everybody else who works for the company.
If a bunch of people are unhappy and want to leave, then they are welcome to seek out other opportunities. Nobody's holding them hostage. What we are doing is making sure that before they start working at our company, they understand that if they aren't happy they are free to go work somewhere else but they are not free to actively jeopardize everybody else. If that is a problem, they don't have to come work here.
Pretty simple. You are put off by not being able to recruit away my staff...don't work here. Nobody's holding a gun to your head.
I'm not trying to start a fight here, but at no point did I ever imply that I was entitled to employees.
There are certain realities to management and in many cases one bad employee who is thinking of leaving or planning on leaving can have a huge effect on other people in the office. When that behavior turns into "we should all go work at X" in a coordinated effort it can be hugely damaging and significantly more so than everyday turnover.
What's more is that when something like this happens the owner/manager rarely even gets any reaction time to find out why the person(s) left or are leaving to address the problem.
I've experienced this recently. Had an employee leave who complained constantly to the point that other staff contacted me to say they were considering looking elsewhere because the office was so negative. That one employee left and tried to recruit 3 other people with her until that clause stopped it.
As soon as she left, everything in the office got better. That was 2 years ago and none of those other 3 employees she tried to recruit away have been so unhappy as to leave...because we do everything to take care of our employees.
One part of keeping employees happy is knowing the company that they work for is stable. Knowing you're doing everything to make sure that is the case goes a long way to reducing workplace stress.
My fear here is that you're dramatically oversimplifying and the basis for that is the shortness of your replies without seeming to read any of my responses.
Running a business is complex and you deal with a lot of things that aren't anywhere in the realm of what you got into the work to do in the first place. What works one place doesn't necessarily work at another. Sometimes it depends on the type of people who you're hiring as to what type of policies will work.
For employees looking at the long term, 401k's with employer matching are huge. For others it's stock options. For some it's flexibility.
The particular business that I'm talking about is in the same city as the main graduate program in the state for the service we offer, so we get a lot of new grads with a lot of workplace inexperience. We've seen a repeat trend of this "Oh, lets all go work here next" behavior but only in this one city, which is what led to the policy in the first place. For that personality, happiness is job hopping and taking their new friends and clients with them.
I'm just trying to help you understand that all situations are not equal.
"I'm not trying to start a fight here, but at no point did I ever imply that I was entitled to employees."
Yes, you did.
"There are certain realities to management and in many cases one bad employee who is thinking of leaving or planning on leaving can have a huge effect on other people in the office. When that behavior turns into "we should all go work at X" in a coordinated effort it can be hugely damaging and significantly more so than everyday turnover."
Then maybe you should treat your employees better. Either way, not my problem.
"What's more is that when something like this happens the owner/manager rarely even gets any reaction time to find out why the person(s) left or are leaving to address the problem."
Like all things with management, you have to be more proactive, not reactive. Again, not anyone's problem but yours.
"Sometimes, that one person just needed to go and everybody else will be fine"
If that were true, then everyone else wouldn't be looking at joining that person.
"My fear here is that you're dramatically oversimplifying and the basis for that is the shortness of your replies without seeming to read any of my responses."
That's because it is simple. You do not have the right to employees.
"Running a business is complex"
Nobody said otherwise. Still no excuse for you to be putting restrictions on your employees like that. You don't own them.
What about an on-line cursus, like, at Stanford, studying and getting the diploma. Of course, it may not be considered equivalent to the diploma obtained at Stanford in the Silicon Valley, but it would change you to a diplomed programmer, and you might get more doors open? http://online.stanford.edu/
There are others MOOC: http://coursera.org/http://ocw.mit.edu/index.htm
OP's age might (will) still work against him even with a diploma. There is still a perception in IT that anything to do with technology is for the young and hip (even though the Internet is 20 years old and digital gaming even older, but ho hum). It's ridiculous and annoying and there are too many young people willing to be taken advantage of in return for grok-only-knows-what they think they are getting.
Ok, the WWW then. Let's be honest, the average Joe didn't use the Internet before the WWW came along (at least not knowingly). But I should know better than to mix the two up.
I'm also a self taught programmer, but I have never been treated less for not having a degree. I'm rather fortunate I guess. I once even wanted to work in San Francisco (I'm based in The Netherlands), and the first job I applied for actually hired me and flew me in every so often.
I took this to be less a post about not having a degree but rather, not keeping up with the market. How it's easy to just do the work that's in front of you and not consider how your choices now will affect your career in 10~20~30 years time.
Not having a degree doesn't help finding work (it shouldn't make a difference, but unfortuantely with most HR depts it does) but if the poster had been willing to aggressively work on their career instead of coasting at the "traditional office" the story could be very different.
I've done a few years with a mixture of small company/freelance work myself and I'm back in an enterprise company for the first time in ages and on a purely technical level it's a giant step back. There's huge resistance to changing existing code and/or introducing new technologies. Often with good business reasons (the product is done, it's in production and huge changes are not needed) but if you're on the technical side then you absolutely have to be looking out for your own skills if you ever want to work outside of that company again.
If I was a hiring manager, seeing 10 years at a "traditional" company on a CV with no signs of interest in the field outside of the job would be setting off alarms. I absolutely would rather hire someone with experience and fully developed professional skills than a fresh grad, but the nightmare is that your experienced hire is used to just following their 80 page internal process guide every day and they wouldn't be able to handle any new situations.
I am self taught with no degree and honestly, I get at least an interview with about 70% of the places I apply to. I don't put my education on resumes and nobody EVER asks. I am applying to mostly startups though..
I do think startups are the key. Startups generally don't have the money for silly hiring processes so they actually take the time to talk to people that apply for positions.
That and the money they save on stupid HR process goes to my salary so that is great too.
I disagree, i've worked for a few fortune 500 companies. The fact that I don't have a degree has never stopped me from getting a programming job. On the other hand, i've definitely had the feeling like there was a glass ceiling.
I wrote a blog post a while back about how dropping out of school has impacted me professionally and personally. I feel it's relevant, even if my story did not involve exiting the industry for an extended period, because being self-employed for a decade puts me in a fairly similar position, along with lack of a degree.
I would look too into jobs where programming is an asset. I wasn't initially contracted as programmer (caption reviewer of all things), but managed to bring code into most problems, automate away lots of repetitive processes and create tools and workarounds for whatever we didn't have yet on our main app, or even to help customers integrate with our API. Conditions may not be as good as a plain software engineering position, but you may have a bit more freedom.
The whole 'do an open source' project is a crock. I single-handedly wrote a large Javascript plug-in module for a well-known editor. It's used by hundreds of people around the world but all the folks employing 'front-end' programmers seem to bin my CV as my current fulltime job is 100% Python. It baffles me that they want someone who is both a CSS3/LESS/SASS design guru and understands closures/promises/OO/etc.
Is your physical location also having an influence here? There's no doubt programming jobs have got harder for a lot of people to get and I never believe articles about a shortage of STEM candidates (just there's a shortage of them at the right price). However, I know a few people in the UK who don't struggle for programming jobs (London area) even though they've got no university degree.
I was thinking the same thing about location. If you can, move to a city where there is less competition for jobs. Midwest cities have a lot of jobs in banking and insurance that aren't as competitive.
I have a bachelor degree in EE and have been programming since 2 years, and also doing penetration testing since i love security, yet i have not even managed to get an interview at any company i applied to , don't even know what is the problem .
I can empathize. Perhaps getting involved in open source would help?
The OP was a little bit light on details of the exact work under-taken at the 'company' but I'm guessing it wouldn't be interesting enough to pass the sift of most recruiters.
That's tough but with Open source you could get involved in anything you felt like, make a contribution, get recognition and reboot/re-skill that way?
Still, it's not an easy or quick solution though and YMMV.
One thing that might help is to stop selling yourself down. Like me, you are a giant risk because you have no degree. However, risks are taken all the time if somebody decides that there is a good chance that the risk will pan out.
Show to them why you are a worthwhile risk instead of showing them that you are more of a risk than you are.
I sympathize with your trouble but what you describe seems exaggerated to me.
If within a year you made only a thousand dollars, why didn't you spend more time working on a side project, or sharpening your skills? Maybe the ones you currently have are not much in demand?
Also, freelancing sites do have a lot of low quality jobs, but if you spend some time digging around you can find decent jobs; e.g. I, a poor country resident, have found jobs that made me in a week as much as you claim to have made within the year.
And btw, I'm thirty-something, university drop-out and with a couple of huge holes in my CV. But that's not what I bring forward when asking for a job. Instead I project the most confident image that I have for myself and that's my advice to you, too (i.e. don't focus on the negativity of your current situation, it's not going to help you find a job).
If it seems exaggerated, that's because it is. Outside of NYC and SF, there's basically nowhere in the US where businesses wouldn't hire a competent programmer on the spot.
The reality is also that a 40+, non-degreed programmer will have their resume thrown away by the first line HR people in 95%+ of cases. Not qualified for senior jobs due to lack of a degree; not qualified for entry-level jobs due to lack of a degree and age.
If you want to be educated on this, feel free to make up a fake resume of a 40+, no-degree programmer and shop it around. Make a list of any responses you get. You can keep that list on an index card.
Well, GoogBookSoft comes to Canada every year and wastes many millions sponsoring J1s, TNs, H1Bs, and relocation while paying the same salaries as they do to Americans.
Why would they do that if there was no shortage of qualified American programmers in the bay?
If there is a shortage and companies go abroad to fill positions, they're technically 'holding down wages'. Otherwise wages would skyrocket into the atmosphere as more and more money chases the same few engineers. Less value would be produced at a higher cost.
I don't see why that would be a preferable situation for the industry or the country at large. Are you really struggling on your measly $100k + stock (at minimum) and desperately need more?
The developers we hire in their 40s don't all have degrees, but what they do have is relevant experience. Now that relevance may be domain knowledge in the industry, or it might be experience with particular part of our stack - the classic example is the very experienced Oracle developer. You'll all too easily lose out to the young, hungry graduate who will also need to learn lots of things on the job, but doesn't come with as much baggage.
The OP might well have lots of relevant experience but it hardly comes across in the post. Neither does any appreciation, or indeed even an active lack of appreciation, that "knowing people" is the way to break through the HR process. After 20+ years in development there's a degree of expectation that you have built bridges along the way with people who can recommend you - because they want to work with you again. Because that's the flip side of being the experienced hire, you need to have the soft skills to utilise that experience - be it coaching and mentoring, writing well, negotiating and influencing etc.
> The OP might well have lots of relevant experience but it hardly comes across in the post.
Strange, I read it very differently. Just because those things aren't specifically addressed didn't leave me with the impression there isn't anything there. Very early in the article it was stated how they spend a lot of time honing their skills, presumably all their life, not sure I agree with your impression this is an unskilled individual.
> After 20+ years in development there's a degree of expectation that you have built bridges along the way with people who can recommend you
That's different from just asserting they lack in skill, however. If you read the article, it's clear why they can't satisfy this specific expectation. It seems callous to simply proclaim they should have built industry relations all their lives, and now there is nothing left to be done.
> When companies find out I don't have a degree that's usually the end of the road.
I have a difficult time believing this. I've worked for & know of companies through connections that care 10x more about your portfolio than degree. We've passed on Stanford grads & even a guy who worked at NASA, because they just couldn't physically bring themselves to code when we needed them too, they couldn't sit in front of a computer & actually build out a test feature despite loving to talk intelligently about the problem. It's not nerves... Degrees/ credentials can create these terrible comfort bubbles that prevent programmers from actually diving in & being productive. When you've been around enough it's easy to spot this type.
In my experience, portfolio is the #1 factor, and I think most companies would take you seriously if you have one w/ at least a couple full, impressive projects.
Completely agree, you can spot the competent programmer from miles away who was atleast some opensource projects he thinks of as "hobbies" in his portfolio.
companies dont care what you think you can do, because you have a degree. they care for what you can do for them, if what you are doing in your own time complements the things they would like somebody have done for them. the choice becomes easy.
I feel I can relate to this general life story. A lot. While I'm currently only vaguely looking for a job, I also share the same suspicions about general job options for freelancers - although I have to say that I have been extremely lucky in finding work so far. But I agree it sometimes looks like our work isn't very valuable.
In this context I have to say though that the HN freelancer thread, while yielding uneven results, has mostly been very good to me. (YMMV)
The deeper problem as far as the actual hiring process is concerned, however, might be - as hinted at in the article - the amount of work and hoop-jumping necessary just to earn the privilege of showing up for work. I found this astonishing, too, especially given the fact that most programming positions probably have a high turnover rate, and I believe it does have to do with hundreds of applicants showing up for a single position. The ensuing filter process is not only a drain on the applicants, but also on the companies that are paralyzed with making this decision.
I believe the mere existence of TripleByte and SmartHires shows over-supply is a problem, and it's underscored by the fact that they have no problems turning people away.
> there is a shortage of good developers (for various definitions of good).
But couldn't that simply be a result of an inadequate selection process, instigated by a flood of applicants, and then worsened by an inability to judge who will be good in what role? It seems very easy to dismiss anyone looking for work on the grounds that they must not be very good to begin with. All we know is not enough long-term suitable applicants make it to the end of the hiring pipeline.
There are multiple problems we're talking about here.
One is the selection problem, that orgs have great difficulty in working out who is a good developer and who is not.
The other is that there are a lot of developers who have difficulty in getting work, and to a large extent a lot of them just aren't any good and would be better off in a different career (sorry but that's just the way it is).
Once you've removed the rubbish developers there are indeed far more jobs than developers.
> Once you've removed the rubbish developers there are indeed far more jobs than developers.
Agree. And once you add in the big companies like FB, Google, etc... picking up a huge lot of the good+ developers, everyone else is scrambling to find someone who can at a minimum do FizzBuzz.
I don't know, I am certain that the big co's miss a LOT of good developers who just don't fit their interview process. I went through Google's once and got cut off pretty early in the process, and never attempted a large Co's interview process again after that.
I didn't say they got all of the good developers, but they definitely pull a lot of them. For a really good developer it makes sense to at least try to work at one of the companies for awhile. The money is good, and it ends up being a great resume builder. Are there great devs who are passed over or who do not want to work at the big companies? Sure, but the big companies do suck a lot of the talent out of the pool.
I think being around 40 with a decade of dev experience should be pretty attractive, at least if the programming experience is somewhat modern. 10 years OO-programming should be translatable to any OO language with ease, regardless of what you actually used before, for example.
There are "unemployable" developers out there, but they are 10-20 years older and have 15 years of niche in-house platforms in some huge enterprise, and now they have no experience with anything anyone recognizes.
Unemployable because just 1 company on CV, no degree and around 40? Sounds strange.
I've interviewed people like this though not as extreme. Basically person gets a job. They learn the job in about 3-6 months and now repeat the same job for years without ever learning anything else. So on paper it shows 5-10 years experience, but in reality they still have about 3-6 months experience.
Part of the blame lies on the company for not giving the employee a growth path, but the largest part lies on the employee for not continuing to grow on their own. Software as a profession is one where you have to constantly be learning. People need to know going in that it is ultimately their responsibility to keep their skills growing and up to date.
> They learn the job in about 3-6 months and now repeat the same job for years without ever learning anything else. So on paper it shows 5-10 years experience, but in reality they still have about 3-6 months experience.
This is the most spot on thing I have read regarding this issue and is why interviewing is so challenging when it comes to developers. This is also why the interview process for developers is so grueling and long. You would be amazed how difficult it is to figure out how much ACTUAL learning experience a person has vs. someone that has done the same thing for 10 years.
I also feel this is why 20-somethings are popular, at least you know for certain how much experience one could possibly have.
I thought it was nearly impossible to do software development and not learn continuously? Can't imagine what a dev workday looks like when you aren't learning. You rarely ever do the same thing twice, and even if you do you learn from past mistakes and become more efficient.
So a dev is hired out of school to build CRUD forms in (VB6|GWT|Something similar). Most likely they master the technology in a few months and now just take new/change requirements and never deal with much beyond the original tech. In a big company where changes can take forever, the dev spends a lot of time waiting on new requirements, going to meetings and acceptance. Before you know it, a lot of time has passed and the dev is still just building CRUD forms in whatever technology that happened to be put on when they were hired.
Having experience /is/ attractive. Not having it, though, is opposite of attractive, especially at 40 and without a degree.
Reading the article, I don't think "Now, life at a traditional office was not that bad: barely any work to be done, it mostly involved sitting at a desk and writing some emails all day. " means he had a developer job.
That might be the case. That's pretty much a definition of software development: 1) there is always a lot to do, in any code base 2) doing that for years, even if it's just improving the same code base, will give new challenges and experience.
If you don't have work to do and you aren't learning and progressing then you aren't doing software development, at least not properly.
Here's the dirty little secret about "employability" you hardly ever read about in places like HN:
It's not about you. It's about your user and what they accomplish with the tools you build for them.
It doesn't matter who you are, what you know, what education you have, where you've worked before, what turns you on, or what you think is cool. It only matters what you can do for others.
It's really that fucking simple.
So forget about all the window dressing and find a way to demonstrate to others what you can do for them. The first step is to find out what they really need.
Like many others here, I am self taught, pretty decent, and love what I do. But the thing that has always separated me from other just as capable but "umemployable" programmers has been my absolute resolve to program for others, not myself.
I even remember one interview when I didn't present a resume, but instead a one-page project plan itemizing exactly what I would build over the next 90 days to help them solve their problem. I got the job instantly. (An extreme example, but you get the idea.)
I have never lacked work. And I'm confident I never will with this attitude. Try it, please.
> I have never lacked work. And I'm confident I never will with this attitude.
I believe you. But that's also because you started this path in life a long time ago. If you're 40+, you've never done freelance/contract work and you need to start finding customers or new employment in a hurry then it's going to be a hungry winter.
you need to start finding customers or new employment in a hurry
What I'm suggesting is being the first to present a believeable plan to solve someone else's problem. You're right, finding them and figuring out what they need isn't easy. But once you do, you have a huge advantage over all the other "unemployable" programmers.
Who says anything about freelance work. People think experience = programming + being paid.
experience = programming
if you can show a active github profile with clean code that shows you are pro-active or a expert in stack or domain, why would "they" not atleast contact you back.
on the other side, if you have just been coding closed source, brain farts and clones that have no innovation or any overlapping area in what you are applying for, then why would they hire you.
if your looking to get hired by a Oracle or a HP, freelance experience wont cut and i doubt a github profile either, but besides huge corporate companies.
most small/medium sized startups are willing to hire programmers that can learn and supply added value.
value is the keyword here, having more then 1 trick in your bag is a must if your coming at it from the "no diploma" angle. Thats why i recommended people to write code for readabilities sake. if nothing else, someone can read it. even if its some crusty 10 year old code.
"if you can show a active github profile with clean code that shows you are pro-active or a expert in stack or domain, why would "they" not atleast contact you back."
There seems to be some confusion amongst people who move from writing code for fun to writing code for money. Which is of course that they're not being paid to write code, but to solve problems. Writers and musicians usually don't get paid just to write or make music, they get paid to entertain. If you're confused about why you're being paid, you might start to think you're getting a raw deal.
Since I started writing software not because of any love for it, but to solve various problems I was having at the time, it's always sort of shocked me that some people manage to get so far into their careers without realizing what they're being paid for.
I quite enjoy it now, but rarely in the revel of pure creation. Usually it's from the satisfaction of a problem solved in a reasonable amount of time under well considered constraints.
A small example: you have some internal database, and now different teams want to have some data analysis done.
The fun thing to do would be to write a generic reporting front end, and easy enough to use so that non-technical people can use to create their own report.
And the pragmatic solution that is to instead spew out all relevant data as CSV with a BOM, so that Excel can easily read it. Turns out a generic data analysis tool exists, and it's unlikely you can beat Excel at its job.
Producing some CSV files from a DB is orders of magnitude less work than creating your own analysis front end, so in nearly all cases, this is the solution you're paid to do.
It's about creating value. It always is. Whether an individual employee, or a company.
The problem is "value" comes through a subjective lens. Different employers value a given work product differently. The OP's big-co employer is likely to value process and documentation.
In this start-up environment, speed is also relevant. Make lots of value quickly.
edw519's 90 pitch works largely because he presents himself in a manner for his customer to clearly see the value he would create. He spelled it out.
Its less about talking about yourself and more about talking about them.
The key thing the OP needs to do (and should have been doing) is networking (outside of work). As others have pointed out, with that much experience, you also should have a network of folks to reach out to.
It can take a long time to build a network. Fortunately, there are tons of opportunities in tech to do so. I'd imagine one of the best paths might be to fine a moderately significant trending (but not trendy) open source project and start getting involved in the community (in whatever way the community needs (maybe not coding initially)).
Learn the code base inside and out. Read the forums, discuss things with people. Create value! Find something needed and do it!
You'll meet people (virtually) along the way. Build a public reputation (very important), and maybe find a job. At least you'll be able to reference your relevant skill in said open source project. You'll then be an older developer, but with very relevant job skills to someone out there.
It's nearly impossible for people to see how you do something useful for users, even if you already work for 10 years in a company. So I'd say that's the least important point of your employability. Other things like being able to integrate to the development team, that's way more important.
THIS! might be THE answer how people works. My life changed significantly when I read this article [1] and realized this is so True. It basically says the same: everybody looks what can you do FOR THEM and that's the main thing that matters.
When writing resumes and doing interview prep, I always try to put myself in the other person's shoes. Would I hire me? Would I be offering what is wanted?
Good advice. You as an experienced professional should always ask what pain points they are experiencing and have suggestions. Even if you don't know the answer for the pain-points you can at least learn something by asking the question.
No, this is feeding into that "meritocracy" myth again. You're assuming that everyone is perfectly rational, and only looks at code, when in reality this is far from the case. In reality, the interviewer looks at you as a person, and has their own biases.
Some people are perfectly capable of doing the work, and are passed up for completely irrational reasons. Empathy, try it, please.
You don't have a degree, do you have a portfolio? If not, then how can you expect to get a foot in the door with no easily verifiable proof of competency?
True story: had an uncle who outperformed everywhere he worked. He faked his own references (via fax at that time) to get in the door, and when people made reference to university he just sidestepped the question or gave vague "yeah" type answers as he had not attended but had left school at the minimum legal age and become self employed (and failed a couple of times). Everyone else studied for 4 years to do what he did better than them.
Not saying you should fake it, I'm saying employers need to stop thinking donuts can't be iced by anyone with less than a masters degree. I've seen a masters grad unable to get through a door that had a security card swipe thing because there were no instructions, even though she had the card in her hand. Sometimes a course isn't what's needed to get a job done.
To the author - it's very difficult to go freelance directly to customers. However, one possible channel is via digital agencies, who often need work done on a contract basis. They usually have their marketing channels worked out. Attend in-person meetups, and let the organiser know that you are looking for work, and it will start to open doors.
This is goofy and a little insulting. At my clients, I write more code than plenty of developers. Turns out it tends to be necessary when you're developing (key word) build pipelines and tooling. I also get to touch a lot more of the stack.
463 comments
[ 3.6 ms ] story [ 295 ms ] threadCare to e-mail me a CV?
If you want to go work somewhere else, that is totally up to you but I'm more than allowed to have a policy stating that you're not allowed to recruit away my entire staff because that destabilizes the entire business, makes the business unable to meet it's contractual obligations and in a multitude of cases can jeopardize the jobs of everybody who is still there.
I recently left one company and joined another, and am trying to convince all my former coworkers to apply here as well because I genuinely think it's a way better place to work.
If you can't compete on the labor market fairly, you deserve to lose employees. Policies like the one you describe are just a market inefficiency that doesn't have a real justification for existing (outside of your own interests).
Business owners have a lot of people's livelihoods at stake. It's about a lot more than just how much more another company is willing to offer you. That might not matter to you, but that's also why you get to see the policy before agreeing to work at the company.
If coming to work at my office and having the flexibility to recruit away all my staff is important to you...then you don't really have to sign the contract. If you do sign the contract then you're agreeing to the terms. It's not rocket science. Fair policy is that you get to decide whether or not to abide by it before I start paying you. You have the right to decide that policy isn't okay with you and not take the job. Nobody forced you to sign the contract and take the job. If it's a market problem, then I will eventually lose all of those employees because they will have plenty of other choices if they aren't happy working there anymore.
Or to spin this around into the language that you used, policies like the one I describe exist because a lot of people only have their own self-interest in mind and part of my job is to have the interests of all of my employees in mind.
This is anecdotal, but I've had an employee leave when she was paid 3 times what I made and given almost full autonomy. She hired away all of the staff at a branch office except a woman dying of cancer and another who was about to move out of state, then took the entire set of clients with her. This was an actual non-compete situation that nearly cost 13 other people their jobs and nearly bankrupted us 6 times over the next 2 years. We took on more debt while trying not to go under to avoid having to fire people who didn't deserve to lose their jobs over a crappy situation.
There are some people who will be unhappy regardless of what you do for them. In that particular situation, I cannot imagine anything else that we could have done for her. Some people are just self-centered and oblivious to the reality that their actions have consequences.
Yes, you better believe the stability of the business isn't your problem but it is mine and No Raid clauses exist primarily to prevent the actions of a few people from affecting the lively hoods of everybody else who works for the company.
If a bunch of people are unhappy and want to leave, then they are welcome to seek out other opportunities. Nobody's holding them hostage. What we are doing is making sure that before they start working at our company, they understand that if they aren't happy they are free to go work somewhere else but they are not free to actively jeopardize everybody else. If that is a problem, they don't have to come work here.
Pretty simple. You are put off by not being able to recruit away my staff...don't work here. Nobody's holding a gun to your head.
There are certain realities to management and in many cases one bad employee who is thinking of leaving or planning on leaving can have a huge effect on other people in the office. When that behavior turns into "we should all go work at X" in a coordinated effort it can be hugely damaging and significantly more so than everyday turnover.
What's more is that when something like this happens the owner/manager rarely even gets any reaction time to find out why the person(s) left or are leaving to address the problem.
Sometimes, that one person just needed to go and everybody else will be fine. http://www.reliableplant.com/Read/4768/workplace-bad-apples
I've experienced this recently. Had an employee leave who complained constantly to the point that other staff contacted me to say they were considering looking elsewhere because the office was so negative. That one employee left and tried to recruit 3 other people with her until that clause stopped it.
As soon as she left, everything in the office got better. That was 2 years ago and none of those other 3 employees she tried to recruit away have been so unhappy as to leave...because we do everything to take care of our employees.
One part of keeping employees happy is knowing the company that they work for is stable. Knowing you're doing everything to make sure that is the case goes a long way to reducing workplace stress.
My fear here is that you're dramatically oversimplifying and the basis for that is the shortness of your replies without seeming to read any of my responses.
Running a business is complex and you deal with a lot of things that aren't anywhere in the realm of what you got into the work to do in the first place. What works one place doesn't necessarily work at another. Sometimes it depends on the type of people who you're hiring as to what type of policies will work.
For employees looking at the long term, 401k's with employer matching are huge. For others it's stock options. For some it's flexibility.
The particular business that I'm talking about is in the same city as the main graduate program in the state for the service we offer, so we get a lot of new grads with a lot of workplace inexperience. We've seen a repeat trend of this "Oh, lets all go work here next" behavior but only in this one city, which is what led to the policy in the first place. For that personality, happiness is job hopping and taking their new friends and clients with them.
I'm just trying to help you understand that all situations are not equal.
Yes, you did.
"There are certain realities to management and in many cases one bad employee who is thinking of leaving or planning on leaving can have a huge effect on other people in the office. When that behavior turns into "we should all go work at X" in a coordinated effort it can be hugely damaging and significantly more so than everyday turnover."
Then maybe you should treat your employees better. Either way, not my problem.
"What's more is that when something like this happens the owner/manager rarely even gets any reaction time to find out why the person(s) left or are leaving to address the problem."
Like all things with management, you have to be more proactive, not reactive. Again, not anyone's problem but yours.
"Sometimes, that one person just needed to go and everybody else will be fine"
If that were true, then everyone else wouldn't be looking at joining that person.
"My fear here is that you're dramatically oversimplifying and the basis for that is the shortness of your replies without seeming to read any of my responses."
That's because it is simple. You do not have the right to employees.
"Running a business is complex"
Nobody said otherwise. Still no excuse for you to be putting restrictions on your employees like that. You don't own them.
Not having a degree doesn't help finding work (it shouldn't make a difference, but unfortuantely with most HR depts it does) but if the poster had been willing to aggressively work on their career instead of coasting at the "traditional office" the story could be very different.
I've done a few years with a mixture of small company/freelance work myself and I'm back in an enterprise company for the first time in ages and on a purely technical level it's a giant step back. There's huge resistance to changing existing code and/or introducing new technologies. Often with good business reasons (the product is done, it's in production and huge changes are not needed) but if you're on the technical side then you absolutely have to be looking out for your own skills if you ever want to work outside of that company again.
If I was a hiring manager, seeing 10 years at a "traditional" company on a CV with no signs of interest in the field outside of the job would be setting off alarms. I absolutely would rather hire someone with experience and fully developed professional skills than a fresh grad, but the nightmare is that your experienced hire is used to just following their 80 page internal process guide every day and they wouldn't be able to handle any new situations.
That and the money they save on stupid HR process goes to my salary so that is great too.
http://www.likewise.am/2015/07/too-cool-for-school-a-retrosp...
http://irc.sircmpwn.com/Drew-DeVault-CV.pdf
The OP was a little bit light on details of the exact work under-taken at the 'company' but I'm guessing it wouldn't be interesting enough to pass the sift of most recruiters.
That's tough but with Open source you could get involved in anything you felt like, make a contribution, get recognition and reboot/re-skill that way?
Still, it's not an easy or quick solution though and YMMV.
Show to them why you are a worthwhile risk instead of showing them that you are more of a risk than you are.
If within a year you made only a thousand dollars, why didn't you spend more time working on a side project, or sharpening your skills? Maybe the ones you currently have are not much in demand?
Also, freelancing sites do have a lot of low quality jobs, but if you spend some time digging around you can find decent jobs; e.g. I, a poor country resident, have found jobs that made me in a week as much as you claim to have made within the year.
And btw, I'm thirty-something, university drop-out and with a couple of huge holes in my CV. But that's not what I bring forward when asking for a job. Instead I project the most confident image that I have for myself and that's my advice to you, too (i.e. don't focus on the negativity of your current situation, it's not going to help you find a job).
The reality is that CEOs talk up a shortage while holding salaries absolutely steady and even while laying off thousands of programmers:
http://www.latimes.com/business/hiltzik/la-fi-hiltzik-201508...
The reality is also that a 40+, non-degreed programmer will have their resume thrown away by the first line HR people in 95%+ of cases. Not qualified for senior jobs due to lack of a degree; not qualified for entry-level jobs due to lack of a degree and age.
If you want to be educated on this, feel free to make up a fake resume of a 40+, no-degree programmer and shop it around. Make a list of any responses you get. You can keep that list on an index card.
Why would they do that if there was no shortage of qualified American programmers in the bay?
If there were any shortage, why are IT wages absolutely flat?
If there were any shortage, why the famous pickiness exhibited by every company in their interview process?
http://cis.org/no-stem-shortage
If there is a shortage and companies go abroad to fill positions, they're technically 'holding down wages'. Otherwise wages would skyrocket into the atmosphere as more and more money chases the same few engineers. Less value would be produced at a higher cost.
I don't see why that would be a preferable situation for the industry or the country at large. Are you really struggling on your measly $100k + stock (at minimum) and desperately need more?
The OP might well have lots of relevant experience but it hardly comes across in the post. Neither does any appreciation, or indeed even an active lack of appreciation, that "knowing people" is the way to break through the HR process. After 20+ years in development there's a degree of expectation that you have built bridges along the way with people who can recommend you - because they want to work with you again. Because that's the flip side of being the experienced hire, you need to have the soft skills to utilise that experience - be it coaching and mentoring, writing well, negotiating and influencing etc.
Strange, I read it very differently. Just because those things aren't specifically addressed didn't leave me with the impression there isn't anything there. Very early in the article it was stated how they spend a lot of time honing their skills, presumably all their life, not sure I agree with your impression this is an unskilled individual.
> After 20+ years in development there's a degree of expectation that you have built bridges along the way with people who can recommend you
That's different from just asserting they lack in skill, however. If you read the article, it's clear why they can't satisfy this specific expectation. It seems callous to simply proclaim they should have built industry relations all their lives, and now there is nothing left to be done.
I have a difficult time believing this. I've worked for & know of companies through connections that care 10x more about your portfolio than degree. We've passed on Stanford grads & even a guy who worked at NASA, because they just couldn't physically bring themselves to code when we needed them too, they couldn't sit in front of a computer & actually build out a test feature despite loving to talk intelligently about the problem. It's not nerves... Degrees/ credentials can create these terrible comfort bubbles that prevent programmers from actually diving in & being productive. When you've been around enough it's easy to spot this type.
In my experience, portfolio is the #1 factor, and I think most companies would take you seriously if you have one w/ at least a couple full, impressive projects.
companies dont care what you think you can do, because you have a degree. they care for what you can do for them, if what you are doing in your own time complements the things they would like somebody have done for them. the choice becomes easy.
In this context I have to say though that the HN freelancer thread, while yielding uneven results, has mostly been very good to me. (YMMV)
The deeper problem as far as the actual hiring process is concerned, however, might be - as hinted at in the article - the amount of work and hoop-jumping necessary just to earn the privilege of showing up for work. I found this astonishing, too, especially given the fact that most programming positions probably have a high turnover rate, and I believe it does have to do with hundreds of applicants showing up for a single position. The ensuing filter process is not only a drain on the applicants, but also on the companies that are paralyzed with making this decision.
I believe the mere existence of TripleByte and SmartHires shows over-supply is a problem, and it's underscored by the fact that they have no problems turning people away.
But couldn't that simply be a result of an inadequate selection process, instigated by a flood of applicants, and then worsened by an inability to judge who will be good in what role? It seems very easy to dismiss anyone looking for work on the grounds that they must not be very good to begin with. All we know is not enough long-term suitable applicants make it to the end of the hiring pipeline.
One is the selection problem, that orgs have great difficulty in working out who is a good developer and who is not.
The other is that there are a lot of developers who have difficulty in getting work, and to a large extent a lot of them just aren't any good and would be better off in a different career (sorry but that's just the way it is).
Once you've removed the rubbish developers there are indeed far more jobs than developers.
Agree. And once you add in the big companies like FB, Google, etc... picking up a huge lot of the good+ developers, everyone else is scrambling to find someone who can at a minimum do FizzBuzz.
There are "unemployable" developers out there, but they are 10-20 years older and have 15 years of niche in-house platforms in some huge enterprise, and now they have no experience with anything anyone recognizes.
Unemployable because just 1 company on CV, no degree and around 40? Sounds strange.
Part of the blame lies on the company for not giving the employee a growth path, but the largest part lies on the employee for not continuing to grow on their own. Software as a profession is one where you have to constantly be learning. People need to know going in that it is ultimately their responsibility to keep their skills growing and up to date.
This is the most spot on thing I have read regarding this issue and is why interviewing is so challenging when it comes to developers. This is also why the interview process for developers is so grueling and long. You would be amazed how difficult it is to figure out how much ACTUAL learning experience a person has vs. someone that has done the same thing for 10 years.
I also feel this is why 20-somethings are popular, at least you know for certain how much experience one could possibly have.
Personally if I feel I'm no longer learning then I raise it with my manager. If after a few months nothing has changed then I start interviewing.
This is one thing that software shares with engineering disciplines
Reading the article, I don't think "Now, life at a traditional office was not that bad: barely any work to be done, it mostly involved sitting at a desk and writing some emails all day. " means he had a developer job.
If you don't have work to do and you aren't learning and progressing then you aren't doing software development, at least not properly.
It's not about you. It's about your user and what they accomplish with the tools you build for them.
It doesn't matter who you are, what you know, what education you have, where you've worked before, what turns you on, or what you think is cool. It only matters what you can do for others.
It's really that fucking simple.
So forget about all the window dressing and find a way to demonstrate to others what you can do for them. The first step is to find out what they really need.
Like many others here, I am self taught, pretty decent, and love what I do. But the thing that has always separated me from other just as capable but "umemployable" programmers has been my absolute resolve to program for others, not myself.
I even remember one interview when I didn't present a resume, but instead a one-page project plan itemizing exactly what I would build over the next 90 days to help them solve their problem. I got the job instantly. (An extreme example, but you get the idea.)
I have never lacked work. And I'm confident I never will with this attitude. Try it, please.
I believe you. But that's also because you started this path in life a long time ago. If you're 40+, you've never done freelance/contract work and you need to start finding customers or new employment in a hurry then it's going to be a hungry winter.
What I'm suggesting is being the first to present a believeable plan to solve someone else's problem. You're right, finding them and figuring out what they need isn't easy. But once you do, you have a huge advantage over all the other "unemployable" programmers.
experience = programming if you can show a active github profile with clean code that shows you are pro-active or a expert in stack or domain, why would "they" not atleast contact you back.
on the other side, if you have just been coding closed source, brain farts and clones that have no innovation or any overlapping area in what you are applying for, then why would they hire you.
if your looking to get hired by a Oracle or a HP, freelance experience wont cut and i doubt a github profile either, but besides huge corporate companies. most small/medium sized startups are willing to hire programmers that can learn and supply added value.
value is the keyword here, having more then 1 trick in your bag is a must if your coming at it from the "no diploma" angle. Thats why i recommended people to write code for readabilities sake. if nothing else, someone can read it. even if its some crusty 10 year old code.
Because you're older, or a minority, or female...
Since I started writing software not because of any love for it, but to solve various problems I was having at the time, it's always sort of shocked me that some people manage to get so far into their careers without realizing what they're being paid for.
I quite enjoy it now, but rarely in the revel of pure creation. Usually it's from the satisfaction of a problem solved in a reasonable amount of time under well considered constraints.
A small example: you have some internal database, and now different teams want to have some data analysis done.
The fun thing to do would be to write a generic reporting front end, and easy enough to use so that non-technical people can use to create their own report.
And the pragmatic solution that is to instead spew out all relevant data as CSV with a BOM, so that Excel can easily read it. Turns out a generic data analysis tool exists, and it's unlikely you can beat Excel at its job.
Producing some CSV files from a DB is orders of magnitude less work than creating your own analysis front end, so in nearly all cases, this is the solution you're paid to do.
The problem is "value" comes through a subjective lens. Different employers value a given work product differently. The OP's big-co employer is likely to value process and documentation.
In this start-up environment, speed is also relevant. Make lots of value quickly.
edw519's 90 pitch works largely because he presents himself in a manner for his customer to clearly see the value he would create. He spelled it out.
Its less about talking about yourself and more about talking about them.
The key thing the OP needs to do (and should have been doing) is networking (outside of work). As others have pointed out, with that much experience, you also should have a network of folks to reach out to.
It can take a long time to build a network. Fortunately, there are tons of opportunities in tech to do so. I'd imagine one of the best paths might be to fine a moderately significant trending (but not trendy) open source project and start getting involved in the community (in whatever way the community needs (maybe not coding initially)).
Learn the code base inside and out. Read the forums, discuss things with people. Create value! Find something needed and do it!
You'll meet people (virtually) along the way. Build a public reputation (very important), and maybe find a job. At least you'll be able to reference your relevant skill in said open source project. You'll then be an older developer, but with very relevant job skills to someone out there.
[1]: http://www.cracked.com/blog/6-harsh-truths-that-will-make-yo...
When writing resumes and doing interview prep, I always try to put myself in the other person's shoes. Would I hire me? Would I be offering what is wanted?
Some people are perfectly capable of doing the work, and are passed up for completely irrational reasons. Empathy, try it, please.
Not saying you should fake it, I'm saying employers need to stop thinking donuts can't be iced by anyone with less than a masters degree. I've seen a masters grad unable to get through a door that had a security card swipe thing because there were no instructions, even though she had the card in her hand. Sometimes a course isn't what's needed to get a job done.
That sums it up.
We're trying to recruit a devops with AWS experience. We really don't care about which uni you went to or didn't go to.
Probably no good for you as we're in Manchester, UK but I don't think we're that unique.