
I have no side code projects to show - rockdiesel
https://www.linkedin.com/pulse/i-have-side-code-projects-show-you-ezekiel-buchheit
======
dvcrn
Here's a little example what happened to me:

I interviewed with a company. Naturally they asked for my side projects which
I showed them. We talked about technical challenges, scaling, interesting bits
of codes - all these kind of things. They were really excited. I passed the
interviews and got the job.

Fast forward a couple month, still working on my side projects, some of which
started generating a couple hundred bucks a month. My boss started asking me
to stop any side projects and put all my time thinking about the company
instead. I refused and said that I am 100% there during my work hours but what
I do in my private time is not related and even the reason why I got this job
in the first place. My boss didn't like that at all and even tried to figure
the exact times out when I would work on private stuff to hold it against me.
I eventually quit.

If your company wants to see side projects but dislikes the idea of you
actually working on them after starting, you are doing something wrong.

~~~
otakucode
It depends on your point of view. The boss wants the most sophisticated talent
he can get, and he doesn't want to pay anything for it. Every penny he pays,
and every second of your life he doesn't get for it, is a failure in his eyes.

Since the 1980s, employment has become a game. Employers don't like it if you
realize this and play them right back, of course, but there's not really any
other option. Their viewpoint is dominant and essentially universal. In
response to monumental productivity multiplication due to technology, they
froze wages, destroyed pensions, cut benefits, and extended the work week.
They believe if an employee becomes irreplaceable, they have become
expendable. Keeping employees dispensable is weighed as far more important
than keeping skilled talent. Read books written by managers for managers.
Their actions aren't random or stupid, most people just don't understand their
reasoning.

And if you only get one tattoo in your life, I highly recommend this
centuries-old quote from The Rubiyat of Omar Khayaam: "Make game of that which
makes as much of thee."

~~~
dasil003
I think this game is much more openly recognized in SV without too much
cynicism. The average tenure is probably around 3 years, and people move
between companies often. This serves both the employee by diversifying their
skillset, and it serves companies by facilitating knowledge transfer for
certain techniques, particularly around scaling and operations for larger tech
companies that individuals can't get through mere education or even small-
scale work.

Consider that we openly talk about Bus Factor as a way of explicitly
quantifying the indispensability of certain people; but the solution is not to
get rid of them, it's just to train more people on those aspects. Of course
there's still some amount of Machiavellian maneuvering, but at least while
talent is thin on the ground employees still have enough leverage not to get
screwed—not as badly as most non-unionized employees anyway.

------
rabidrat
I want to work in a group where they appreciate that I was basically born to
code. That despite my youthful features, I have still been coding for over 30
years. That I can do many tasks in an hour, that other people would take days
to do. That I will spend an extra 3 hours to put a cherry on top, just because
I can. I may even do it on a Saturday, because code is what I like to do with
my spare time too.

So when the last company I interviewed at asked me "what is the difference
between range and xrange in Python?" I just kind of rolled my eyes (on the
inside). To me this is like asking a professional translator "what is the
difference between 'si' and 'sí' in Spanish?" They were not interested in the
thousands of lines of code I have on GitHub for my side projects, nor in a
recent project that got me 15 seconds of fame. I ended that interview by
saying "I don't think I'm a good match for this job".

Different companies have different cultures. It's good to be able to identify
the kind of culture you want to work in, and even better to be able to
respectfully decline an opportunity because it doesn't work for you. Don't
become bitter and think that all companies want you to be a coding robot, just
because Google and Facebook do (or seem to; I'm not sure how many of my
friends who work there actually have that many side projects either). There
are plenty of jobs that will work for you that won't work for me, and vice
versa.

~~~
eps
The range/xrange question was likely to check if you were a fraud.

Having interviewed close to a hundred people in a year for a senior C dev
position I can _assure_ you that people lie like you wouldn't believe. They
cheat with take-home tasks, they show others' code as their own. And that's in
the system programming circles, where the level of professionalism is
typically much higher than in app/web development areas. We got burnt really
bad when a brilliant dude whom we relocated across the country turned out to
be the laziest moron I've ever had a misfortune to work with. So you bet we
started most of the interviews with fuzz-buzz kind of questions.

~~~
jknoepfler
On the other hand, I'm a skilled dev with only a smattering of python
experience, but if you asked me this question I'd have no idea and wouldn't
think twice about looking up the python docs for both. What are you actually
asking?

P.s. I don't believe anyone actually fails fizz buzz.

~~~
ajmurmann
I suspect failing fizz buzz typically is caused by nervousness. I've one
gotten so nervous in an interview that I'm certain I couldn't have implemented
fizz buzz either at that time. I've also seen it on interviewees. As the
interviewer it also sucks because you can't be sure it's nervousness.

~~~
IndianAstronaut
If someone is the type of person that gets nervous in an interview, these are
the people that really need to do good side projects.

------
cocktailpeanuts
I have worked at a prestigious tech company, and I know what OP is talking
about.

A lot of very talented people don't have side projects, and they don't do any
coding outside of work. They don't go to hackathons. They don't bother to
learn the newest reactive javascript framework. They go to yoga classes after
work. They talk about TV shows they watched last night during lunch.

But they EXCEL at what they do at work.

I can say that this is really a subjective thing. When you make a judgment
about these people, it actually tells more about yourself than the person
being judged.

When I saw these people who are super talented, but "waste away their lives"
just climbing up the ladder I just couldn't sympathize. Also personally I like
them but I would never think about starting a company with them.

That's why I understand where OP is coming from, and he's right in a lot of
cases, but also I think he should understand that not everyone will agree with
you on how you view your life. People like me can't stand not working on my
own project, but there are also super talented people who are perfectly fine
with living a balanced and stable life. Talent and intelligence has nothing to
do with how you live your life.

So, I think no one should judge anyone else. The company who didn't hire this
guy may have lost a talented person, but in many cases talent is not what
companies need the most.

For large companies like Amazon (which OP seems to work at) this type of
employee is the ideal choice since they get the talent AND stability.

But for startups, the concept of stability doesn't really make sense anyway so
it's a different story. If I was doing a startup and had to pick the first
employee, and was given a choice between a passionate, right out of the
college guy, and an experienced and talented engineer who wants to live a
balanced life, I would definitely choose the former. (Although the best case
would be to find the third guy who's passionate AND talented)

~~~
dasil003
Having spend the last decade living the startup life, and now searching for
something more stable, I have to say you're setting up a false dichotomy
between passionate and balance-seeking. They are completely orthogonal, you
can be passionate and work widely varying hours; you can also be indifferent
and work widely varying hours.

On a tangent, I don't really like the word passion anyway. What makes me a
good programmer is not my passion for it, it's my curiosity and motivation. My
motivation is a primary factor in my performance, and that probably is 80%
influenced by context, and 20% by the content of the task itself (at least for
most things that fall within the standard purview of programming tasks).

Finally, you don't mention talent for the new graduate. That is a _huge_
factor. If the new grad is not extremely talented, they will never produce
anything of value. If they are highly talented they can likely power through a
lot of things, but they also need to make good decisions about what to work on
since time allocation is the single hardest thing about getting early traction
for a startup. Yes, all else being equal, take the guy that wants to work 16
hours a day and has no other distractions, but if the veteran who wants to
work 30 hours a week has better business sense and a smarter idea of what to
build and when, then that dwarfs the code quality consideration.

~~~
cocktailpeanuts
Sorry that it came off that way, I tried to make myself clear with "I can say
that this is really a subjective thing. When you make a judgment about these
people, it actually tells more about yourself than the person being judged."

From my experience, all these brilliant, intelligent, and talented people (who
don't do extracurricular activities related to coding) have completely
different motivations than myself. My point is that it's fine that they do,
and it's fine that I don't think that way either.

I'm just saying that there are people who are fit for certain type of
situations, and some people--no matter how talented they are--are not fit for
certain jobs just because their life values are not compatible with the
situation. That doesn't mean the employer who made that decision is an idiot.
They're just not compatible, and that's fine.

------
jstewartmobile
When I started programming, I had side projects coming out of my ears. It was
pure recreation.

After getting a "real" programming job, where I had to deal with design-by-
committee, power struggles, keeping up appearances, etc. I didn't dare jump
back into recreational programming--I'd never go back to my actual job.

Even now, working for myself, I have to be very disciplined when I crack open
the "fun" code, because I know it will be very painful when it is time to go
back to the code that pays the bills.

------
peteretep

        > For every one of those
        > folks there are thousands
        > of amazing, solid
        > developers
    

This does not match my experience.

Also, for every genuine genius in the world, there are a whole bunch of pretty
average people who think they're really smart.

------
shakna
> When companies say they want "passionate developers" that are coding in
> their free time, when companies say they want "the best," I get nervous.
> It's a myopic approach to team building. It's a subtle way of requesting
> human machines.

I take issue with this.

I don't write code in my spare time for fun, I have a family.

When I do write it, and when I do Open Source it, it's because it makes my
life easier. It makes it easier to check my email, track what I still need to
do on the house, and cut out half my work tomorrow, so I can take some leave
and be with my family.

I release it to the wild so that others might benefit, and I can pull it out
when recruiters ask to see my code, even if they can't understand it, which is
most of the time.

~~~
bubblesocks
I've had a few companies ask me for my Github account, so they can see what
code I've written. I never give it out, because I think the request is
pointless to start with.

A friend of mine, who works for a well-known technology giant, recently told
me about a Linux guru they interviewed and hired. He was amazing in the
interview, and they gave him an offer on the spot. When he started working,
however, he constantly turned in sub-par work. A couple of months later, one
of the members of the team who had interviewed this guy flew out to where he
was working, and discovered that the guy sitting in the cube doing the work
was not the guy they had interviewed. It was someone else. The guy went
through quite an effort to cheat his way into a job, but when he was
discovered, he was immediately fired.

If cheating was my thing, and I really wanted to get a job via nefarious
means, so I could worry about my job on a daily basis, how hard would it be to
pay someone to write a bunch of Github code for me? Exactly, which is why the
request is pretty dumb to start with, I think.

For a bunch of smart people, we engineers sure have a hard time figuring out
how to interview people and ascertain their skills.

~~~
logicallee
Hi, I was really interested in this story:

>A couple of months later, one of the members of the team who had interviewed
this guy flew out to where he was working, and discovered that the guy sitting
in the cube doing the work was not the guy they had interviewed. It was
someone else.

This seems absolutely incredible to me (just in the slang sense, I don't mean
that I'm incredulous). I mean it's way more than enough for the company to sue
for fraud the (highly qualified) person who showed up to the interview, or to
sue the person doing it. TBH if I were that company I would likely sue for
damages. I mean it's just so blatant and goes so far.

I've never heard of this. So I would be curious if you would reply with a
somewhat more detailed write-up (maybe 1 or 2 paragraphs) of anything else you
know about that case! But, maybe you've mentioned everything already. (You
said a friend of yours told you about this case, so I realize we are reading
this third-hand.) I would just be really interested if you could mention
anything else you remember.

~~~
fencepost
There have been a few stories over the past few years of people outsourcing
their own jobs, but I'm not sure whether any of them have actually been shown
to be based in fact. That said, this could be the same kind of thing - did the
guy in the cube hire the "guru" to interview, or did the "guru" interview then
outsource to the guy in the cube?

~~~
logicallee
oh I didn't even think about that. fraud either way :)

I think outsourcing is one thing - but being an _employee_ who is on payroll
and physically shows up to warm a butt in a seat, goes a lot farther.
Regardless of whether the cube guy paid someone to do his interview, or the
guru hired a body double after getting hired, it's pretty insane. do you have
any links to anyplace you read about the same thing?

------
ajmurmann
The entire drive to hire "passionate developers" makes me very nervous. It's a
double edged sword and most people don't want to see it. Yes, passionate
developers are more likely to stay up to date on technologies and are also
more likely to put in extra time. However, they are also much more likely to
use technology that isn't ready yet and overcomplicate things because of some
misguided aesthetical sense or best case spend way too much time gold plating
the wrong thing instead of providing business value. The cost of those things
is generally much higher than someone going home sightly early or not knowing
the very latest JS framework.

Edit: phone auto correct shenanigans

------
WalterSear
I've built a ton of side projects.

No one has ever shown anything more than a nodding interest in them, as they
lead me to a whiteboard and ask me to regurgitate a couple of pages from Crack
the Coding Interview.

~~~
reustle
Then it sounds like you're interviewing at the wrong kinds of companies

------
woodruffw
As someone who _does_ have a bunch of pet projects, I appreciate the author's
sentiment. I often wonder whether my programming world presence (GitHub, HN,
&c.) accurately reflects the kind of person I am (or perhaps want to be).

~~~
gcb0
hint to the young: contribute anonymously.

go to interviews and talk abou range vs xrange.

it might never happen, but when one employer decides to go crazy and try to
blame you for leaking code (that you may have written even before joining
them) on open source projects, you are going to regret skipping the silly
interviews by showing your open source persona to them. best thing you can do
is keep it to yourself. then when you really need it, say for a research
grant, then go public.

~~~
woodruffw
I appreciate the advice, although with the jobs I've had so far I've been sure
to tell my employer in advance about my open source work.

Maybe I've just been lucky, but all have been either okay with it or actively
supportive (even when concurrent with in-house development). That being said,
I've been careful to avoid open-sourcing projects that I think come to close
to hired work.

~~~
gcb0
what you describe is the common sense absolutely everyone have.

but it means little when dealing with crazy.

------
highCs
I agree with the author. You can't judge the passion of someone by his
behaviour, that's silly. You can be as well a passionate programmer when you
don't code home than when you do.

However, coding home has one - big - perk: it's almost the only way for you to
code something from scratch. Alone. You and your code. You and your progress
rate. You and your bugs. You and your choices. You and your mess. Nobody to
smooth any angle.

I believe coding from scratch - alone - makes you a completely different kind
of programmer indeed. But it has nothing to do with passion. Nothing at all.

I think (I can be wrong, still trying to validate that) that "number of
projects from scratch" is _the_ metric that tells the ultimate level of a
programmer. In other words, if you've almost never coded anything from scratch
(below say 40-50 projects), I do believe you are not very good at programming.
Conversely, I know from experience (my own) that coding from scratch can make
you so good, that you would find Amazon SDEs complete novices (I know from my
own experience at amazon) and this before your 30's. It can make you better
than principal engineers before your 30's. It can make you so good that TDD,
OOP and agile development sounds like novice exercises to you. It can make you
a programming master and beyond.

Could you be as good without coding from scratch really? Well, ultimately
maybe but not as fast. Coding from scratch is so painful, so hard, so
stressful, so frustrating that maintaining code or adding small to medium
sized features is a baby step in comparison. Now of course, if you add
something pretty big to an existing code base or make a god damn big refactor,
you're doing the same thing as coding from scratch basically. The thing is
that it's rare you 1) add that big a feature to an existing codebase 2) alone,
in a big company.

I'm pretty sure the author has passion for programming, probably as big as
anyone else. And balanced life is good for skills as feeling great makes you
more creative amongst other thing. It's just that coding home makes you write
a type of code that is 100 times more difficult than the one you do in big
companies. Paradoxically, I'm pretty sure interviewers don't, at least
consciously, know that.

~~~
je42
there another side to it. coding alone making all decisions on the fly and as
needed can also be very relaxing. in the big company, most of the work is
getting agreement; fighting legacy code; planning transitions; making sure
everybody is on the same page as they contribute...

~~~
jghn
Exactly. I have seen people who are fantastic developers when working on solo
projects but start to struggle when placed in a business/group environment.
Once things like business priorities start informing what people are going to
be working on when, once folks need to start coordinating with other
developers and their own quirks it starts going downhill

------
bluepnume
Part of the process for me has been to try to do as much of my job as possible
in the open source world.

Naturally, I can't open-source any private business code. But if I'm doing my
job right, I'm building libraries and reusable code that isn't tightly coupled
to business logic -- and there's no good reason to avoid throwing all of that
on github, and have it be used by as many people as possible.

Of course there are going to be companies that aren't onboard with the idea of
open-source. It's taken a lot of places a lot of time to get to that stage.
But are those the places you really want to work?

------
driverdan
I am generally suspicious of someone who has no sample code to show. You can't
take a few hours a week for a month to put a small project together as a demo
of your abilities?

Skip the novel writing for a month and instead create a 10 hour project that
shows potential employers you know what you're talking about. You can use it
for years so it's well worth the time investment.

For most jobs you don't have to have a ton of active side projects or
contribute to open source. You should have _something_ to demo though.

~~~
droithomme
Most, but not all people who are employed have contracts which assign
ownership of everything they do, including in their spare time at home on
their own equipment, to their employer. And yes, a very small number of states
consider such standard clauses to be unenforceable.

Most candidates who show their previous code, either written for their
employer, or from side projects that are still within the scope of their
contract, are violating non disclosure clauses of their contracts. Someone who
has sample code to show is likely an unreliable candidate who thinks nothing
of violating his signed contracts. Such candidates should not be hired.

~~~
timdev2
Most employers who include such clauses and aren't open to negotiation are
violating common decency. Any company so incredibly tone-deaf is likely an
unpleasant employer that thinks nothing of treating their employees poorly.
Such companies should not be serviced by professionals.

~~~
Thorncorona
That doesn't make his point moot though.

------
sidlls
I'm not sure I like the tacit implication that folks who do lots of side
projects are superior engineers or are very passionate about "coding".

The assumption that "lots of side projects" is somehow a positive attribute
(from an employer's perspective with regard to "types" of engineers) is very
much a flawed one.

------
wheelerwj
I stopped reading when the author referred to the amount of people living in
cities as "a tiny puddle" of the larger population. That's not even a little
bit accurate.[1]

No, this is nothing more than pity-party because one person wants to fit in
and be recognized for something they aren't. I am glad you think your dog
business,and art, and running makes you equal to or better than someone who is
passionate and dedicates themselves to their interests. You aren't that
person. that's okay. but don't try and form the world to fit your views. You
aren't the best developer, you don't want to be, move on.

[1][http://www.census.gov/newsroom/press-
releases/2015/cb15-33.h...](http://www.census.gov/newsroom/press-
releases/2015/cb15-33.html)

------
egonschiele
I totally agree with this. If you can do the job well, who cares what you do
in your free time.

I've been on the other side (the hiring side), so let me give my perspective.
It's okay to not have side projects, or a presence on Github. It is perfectly
okay to say "I don't have a very active Github account, but let me tell you
what I enjoy about programming". "Show me your side projects" is a (poor) way
of asking, "show me that you are passionate about your job". I'm not looking
to hire the elite, but I _am_ looking for someone who will be happy to come to
work.

~~~
sqeaky
I disagree with the article and the notion that asking for a portfolio is
about passion. I guess it does add insight for that, but really only shows
basic proficiency. I wouldn't hire an artist, writer or designer without
seeing a portfolio of their work so why would I hire a software developer?

I too have been on both sides of the hiring discussion. Because anyone can
write anything on there resume, there are only two way to know if someone can
code. They can write some code of they can show some code they have written.
As both an interviewer and interviewer I would rather work with real world
problems and discuss real world solutions.

So the choice seems to be between stupid whiteboard processes or portfolios. I
suspect there is a reason writers and painters don't have auditions and
perhaps that same logic maps onto programming.

------
palerdot
I always go through an extreme opposite hiring experience. I'm not on linkedin
by choice. Currently I use my SO developer profile as my online resume. But
the lack of a linkedin profile and associated connections makes it look like
I'm not a professional in the view of certain employers. I have a decent bunch
of side projects, and a moderately active github profile and I have gotten all
my jobs including my current one based on that. I don't regret not being on
linkedin. I'm just happy showing my side projects for my coding knowledge as I
cannot show code I have worked as a part of my employment. Also I believe when
talking about code written as a part of employement, it all boils down how
effectively one communicates/talks to the potential employer than how actually
we did it. This is one of the reasons I try to maintain side projects
independent of my day job.

For me, the whole idea of proving oneself as professional by being on linkedin
has been a biggest turn off. Coupled with this, when I look at some of the
people's linkedin profile and the actual attitude and proficiency they
demonstrate in their jobs makes linkedin look like a ridiculous circus.

~~~
nicolia
> when I look at some of the people's linkedin profile and the actual attitude
> and proficiency they demonstrate in their jobs makes linkedin look like a
> ridiculous circus.

Can you share some examples?

------
edpichler
Once I was not accepted for a job because I had very good side projects. They
said I was a risk to them, because I could stole ideas, contracts or be a
competitor. Today I have my own business, if we compete, it's just in hiring
talent.

------
ap22213
Just go work somewhere else. Luckily for many of us, demand has been outpacing
supply for years.

If the market was worse, then it wouldn't seem so strange. Lots of other
professions require a portfolio of work.

------
jeremywho
Wait, I thought Amazon is NOT the place for work/life balance. Why is a guy
that wants work/life balance working at Amazon?

~~~
temp20160423
I worked for a remote office of AMZN's and found that the office I was at had
great work/life balance. At any big company, work/life balance will be very
team-dependent.

------
jwatte
I am passionate about code. But, most of my github is little hacks to solve
some particular need or scratch some particular itch, without any need for
overarching design or maintainability.

The good stuff (including libraries and frameworks) is all in my professional
career.

------
donatj
I feel like if you use open source libraries and are a decent developer you'll
naturally end up submitting a PR to Github at some point. I find bugs in
almost every open source library I use and have had so many PRs to fix them.

~~~
stevekemp
It depends on the projects you're touching, of course.

I've contributed bugfixes to GNU less, GNU screen, and GNU emacs, and GNU
make. None of those would be easy to dig out references for, and none of them
use github.

------
rpd23
Wtf is a boutique app firm?

~~~
fencepost
A boutique app firm is a small company that builds apps for clients. Generally
those clients are going to be smallish businesses (probably mostly less than
1000 employees).

Some examples from my area include a small grocery chain (5-6 stores) with
their own app and a local credit union with their own online banking app with
support for mobile deposits via photographs of checks.

------
DoofusOfDeath
I notice the article is from LinkedIn Pulse.

I dislike Pulse because it's mandatory content on "my" LinkedIn page, which I
find a bit obnoxious.

So I avoid visiting Pulse stories in order to discourage that entire aspect of
the site.

------
gravypod
> I've made it a point to add to my resume and online profiles the other
> things about which I am passionate. The silly art project that I launched in
> Austin. My dog business. Running, painting, writing. It's important to me
> that these attributes be valued by my workplace

Good luck mate, that's got nothing to do with software development. If you
don't love software development then applying for a software job at a software
firm probably isn't the best idea. Many small buisnesses need software people
who are pasionate about other things. Many of these things include "Running,
painting, writing" but a software shop writning software owned by people in
the software industry populated entierly by people who absolutly love writing
software probably isn't the place for that.

------
nicolia
I actually don't mind being a human machine. Not that I've had the chance yet.
I'm still in college to get my CS degree and would fall into one of those
people where "coding is a Craft". I genuinely love programming. I don't have a
family, or really desire one. My weekend plans always consist of building
another project of my own. A place that will let me code all day, give me a
nap room, a shower, some salary, and food sounds like a dream. It's
unfortunate that it costs so much money to get to the cities that promote
this.

I think the author is just realizing that this field isn't for them. Tech
moves fast and to stay on top of it you have to move fast too. At least for
modern tech. Maybe that author would be more comfortable being a COBOL
programmer, or an embedded systems one.

~~~
softawre
> and would fall into one of those people where "coding is a Craft".

Dude(ette), you're still in college. You don't even know what it's like to
have a real engineering job yet.

Do me a favor, save this post and look at it in 5 years.

~~~
nicolia
I've interned at a multibillion euro company for a couple of years. I have an
idea of what it's like.

~~~
walshemj
Lol try having the CTO say when the billing system you look after hits its
first 5 mil a month "this had better be right other wise we are both out of a
job"

~~~
nicolia
I don't understand the joke...

