

Do I need a CS degree for a startup job if I already have skills? - roperopestomp

To start with, I know you don't need to go through a CS program to learn how to code. I'm a journalism student debating whether or not to get a minor in CS for the purposes of getting a job at a startup after college.<p>I've been working as a web developer for about 4 years, both freelance and full time with an advertising agency. I know PHP, HTML5, CSS3, JS + jQuery, all of them really well. I know how to use the command line, version control, and all that kind of stuff.<p>I have a Github profile (not on this screen name), open source projects, and a bunch of other skills like server administration that have gotten me plenty of work in the past, but never at a consumer web product company (except on a small-time freelance basis).<p>I'm also learning Python/Django and Ruby/Rails, working on projects in both at the moment.<p>So basically, I'm wondering if that's enough. My school's CS curriculum is based on Java and ASP.NET, which sounds to me like a big fast waste of time, and it would add one to two semesters to my time in school.<p>On the other hand, I would come away with good CS fundamentals that are language-independent. But on the other-other hand, I could pick up the same skills from MIT Open Courseware.<p>I'd REALLY like to hear from you if you're running a startup and doing hiring, not because I'm looking for a job but because I want to know whether a candidate without a CS degree faces a significant disadvantage.<p>Thanks!
======
veyron
The one thing that I give credit for [regarding a CS degree] is discipline.
Discipline means actually going through whatever hoops the schools make you go
through. Discipline means actually having the patience to take the requisite
classes and doing the projects, even if it isnt glamorous.

lets be honest, about 10% of the work of the startup is exciting. the other
90% is pure drudgery, and that's part of the reason why some people opt to
work for a large corporation.

I restrict myself to hiring kids with a solid CS degree from a good
university, not because I think other people are incompetent or because those
people are competent. I think, at the end of the day, especially for a
startup, I want to be sure that I dont end up with a fly-by-nighter or with a
person unable to keep focused on the task at hand for months at a time.

~~~
roperopestomp
But doesn't finishing college _at all_ prove the discipline thing? How about
an Eagle Scout award, does that mean anything to you?

~~~
btam
I think what he meant is that the kids who sat through the horrible Java and
ASP.NET classes show that they can live through drudgery in the coding world.

It makes sense in theory, and I'm sure there are examples of it. Hiring a
student who enjoys coding so much that they s/he is cripplingly unmotivated by
doing the tedious/boring stuff may have considerable repercussions.

That being said, I think that this policy should give exceptions to people
with proven industry experience, like you. It shows that they can live through
the parts of the job that they don't like without being fired.

~~~
veyron
The sticky thing about industry experience is that its hard to evaluate
expectations.

on the one side, someone who hops from job to job every 6 months has a
stability issue [prove to me that you can stick through this venture, long
enough for it to reach critical mass].

on the other side, someone who stays at a job for many years may expect a
senior role [i.e. must manage a team of coders], possibly rendering them
ineffective.

as someone in finance, i can assert that most CS guys in finance fall in one
of those two categories.

------
rjrodger
There is some "academic" stuff you need to know to be a really good coder:
algorithmic complexity, information theory, lambda calculus, and a good
grounding in discrete and continuous mathematics.

You need to be able to eye-ball an algorithm and go: hmm, that's O(n^2) ...
not gonna work for this use-case... etc.

You can book learn this stuff. Just make sure you do.

Some of the best coders I know never darkened the door of a university.

~~~
notJim
When do discrete and continuous mathematics (in a formal sense) come into
everyday development tasks? I don't even really know what those fields are,
but I do fine as a developer. What am I missing out on by not knowing anything
about them?

 _Edit to elaborate on "everyday development tasks"_ : some startups innovate
by applying some novel algorithm (beyond well-understand and well-documented
ones that anyone could implement), but many are just taking well-understood
problems and solutions and doing them better. Better UI/UX, better business-
model, more integrated with other platforms, etc.

------
triviatise
I think the best predictor of being a good hacker is products you have built.
I was a Electrical Engineer in undergrad, but then went to go for a PhD in
microbiology. When the .com boom hit I wanted to get back to technology, but
had been out of it for 5 years. I built up a portfolio of projects and used
those as my in to my first job. I was able to submit code samples as well as
running applications. The bar at google is high, but I would expect that this
tactic would work for them as well (but dont know for sure), but it would have
to be something very cool. The company I went to work for only hired people
with a graduate degree in engineering (which I didnt have) but they made an
exception for me based on the portfolio (and also probably because they were
desperate).

------
mindcrime
Assuming I had money to hire employees:

No, not having a CS degree would not be a _significant_ disadvantage in
general. And a candidate with some proven track record, a portfolio and/or
demonstrable skill would not be at any disadvantage at all with me - simply by
not having a CS degree.

------
bbeard25
Me and a partner are currently building a startup and we are looking for a
good developer we don't care about the degree as long as your good if you
think you might be interested you can contact me at bb152694@reddies.hsu.edu
and I'll give you more details about the startup

------
mikerhoads
If you are competent and willing to work for equity rather than a large
salary, a startup will hire you. Unless they have "Color level funding", a
startup does not have the ability to be too demanding on the formal
qualifications. Take advantage.

------
thinkcomp
Generally, at Google or other large companies, yes.

Generally, at a startup, no.

------
haploid
At first, I was ready to tell you that the answer is definitely no, if you are
a genuinely skilled developer.

But then I realized that you consider markup and stylesheets with some CRUD
scaffolding to somehow be "coding".

So I will tell you this: You don't need a CS degree to be a fantastic
developer. But you DO need a fundamental understanding of algorithms, data
structures, and how to analyze them. You need to have a fundamental
understanding of how computers operate, regardless of how many layers removed
from the metal you will be focusing your work. This is not the kind of thing
you're going to find in a Django or Rails book.

If you really think computer science is all about writing markup + CRUD
declarations, you should focus your energy on journalism. That kind of a
degree could easily get you a job at a startup, writing copy for sites, press
releases, etc.

~~~
roperopestomp
You're clearly right, because people with theoretical CS knowledge don't use
markup, CRUD, Django, or Rails, and because it's a _proven fact_ that if your
tools aren't sufficiently complex, it is impossible to create something
useful.

I'm impressed by your ability to derive rock-solid conclusions from thin air
and I would like to subscribe to your newsletter.

~~~
olegious
It is poor form to ask for advice then rip someone for giving it to you...

~~~
roperopestomp
What he gave me isn't advice, that's called an "insult"

~~~
haploid
Where's the insult? You mentioned that you are a journalism major, so I
suggested a course of action that could parlay that into a startup job, which
is exactly what you're asking about.

Excellent copywriters can make very good money, and can be integral to the
success of any company. I don't see any way that this is somehow "insulting".

If you're hellbent on doing something from the tech side, then I offered
advice on the foundational skills/knowledge you should start with.

~~~
roperopestomp
Telling someone in journalism that they should go into PR is an insult. There
is gaping chasm of difference between those two professions.

You also made a huge assumption about my existing CS knowledge and what I'd
like to do with it. I was asking if I should _persue a degree in it_ , not
whether I should _study it at all_ , and the main factor here is the time
involved, not the difficulty of learning it.

Aside from that, your language was dismissive and presumptuous, and what you
said, more or less, was "better stick to journalism, kid, anything else is too
much for you."

Re-read what you wrote and _really_ think about what it says.

