How I got a dev job at Khan Academy without a CS degree or dev work experience
stchangg.comSlightly misleading title: "w/o a CS degree" yet has a ECE degree. I went through the same ECE program at a different school and from the experience of my peers and myself, an ECE degree is treated just like a CS degree (but not the other way around). Also, she already has experience working as a PM at Microsoft.
If this was coming from some random X school with a completely unrelated degree or big name company on the resume, I would agree with title, otherwise, no.
Thanks for the comment! Hm, I'm not sure what school you went to, but an ECE degree at Duke is not like an EECS degree at MIT. It leans much more towards the electrical engineering side of things, and very, very few of my peers (in fact, I can't think of any who didn't get a joint CS degree) became programmers afterwards. You can check out the curriculum here: http://www.ee.duke.edu/undergrad/bse-degree-planning.
Edit:
I'd like to also add this point from my blogpost, which can perhaps give a better sense of my ability before I applied:
> Unlike many software developers, I didn’t start programming when I was 10. I started in college at the ripe age of 18 and took a grand total of 4 programming courses during my 4 years there. I was not a stand-out student in any of my programming or engineering courses. No teacher saw promise in me, took me under their wing, or mentored me to greatness.
I liked your article -- I appreciated the different perspective it presents (kind of outside-looking-in on the coding/startup job).
The article also led me on to "Invisible Burden" and "Why Stories Are So Important" -- great stuff. Thanks for writing those.
Thanks! That means a lot to me.
I am EE graduate myself. But I majored in Electrical engineering aspect (electricity generation/transmission, power supply etc.), but not nothing to do with hardware/chips design. I started programming at 25.
I have found that my biggest weakness is not programming, but the interviews where they grill you on CS fundamentals. Did you have to prepare for that?
> Did you have to prepare for that?
Yes, I found it valuable/important to study basic data structures and algorithms before my interviews. Specifically, I read Wikipedia articles and worked through problems in Programming Interviews Exposed, although there are probably many better resources available these days.
Algorithmic questions, while often not very representative of the work that you'll do as a dev, are really common interview questions at many companies. I think this is in part because they're usually well encapsulated and don't require extra context/specialized knowledge. They're also usually not very programming language-dependent.
> grill you on CS fundamentals
Could you provide some examples of questions you were asked?
I majored in entrepreneurship so my idea of "CS fundamentals" may be different from yours, but I took Harvard's CS50 class and felt that it provided a very good introduction to CS.
By CS fundamentals, I refer to data structures, algorithms, and their implementations, distributed systems, OS etc.
So this is the kind of passion they're looking for, and even then they took 3 months!
Yipes, I don't want to discourage anyone from applying. I think I was a special case of desperate/underqualified. That's why the process took me so long - I had to catch up big-time, and was extra paranoid about giving this my best shot (crossing my t's and dotting my i's). That meant spacing out my interviews so I had more time to prepare and improve between them.
Also, just wanted to note that the interview process has been greatly improved since we were able to allocate a person full-time to handling recruiting, scheduling interviews, etc. I don't know stats on our current turnaround time from application submission to offer, but I'm pretty sure it's much better (maybe a couple weeks to a month).