
Ask HN: How to prepare a tech interview without a formal CS education? - chany2
I basically learned hacking sites and apps through hackathons, and just imitating and googling the heck outta stuff.<p>I build primarily my websites through JavaScript&#x2F;HTML&#x2F;CSS - with PHP - also UI&#x2F;UX&#x2F;Ideation - since I only know those, thats what I would be tested in to explain.<p>The interview would be an algorithm problem, judging how I think and what frameworks I am most familiar with, how I put them together to build a stack, and how comfortable I am in communicating it.<p>So not sure how to decipher what the above meant, and what&#x2F;how I should prepare before this interview. Any advice&#x2F;suggestion or what I should do? (What would be stack or framework in this case, Jquery, Chocolatechip.js?)<p>Thanks.<p>* Note its more of a Front-End Product Developer role - and the tech interview is to see that I won&#x27;t get stump on dealing with technical problems.
======
argonaut
It's unclear from what you just said whether it would consist of just one
algorithm problem, or whether it would consist of one algorithm problem and
then other questions about frameworks.

Algorithms generally means data structures and algorithms. Stuff like hash
tables, sorting, linked lists, binary search, trees, tree traversal methods,
runtime complexity. Despite what it sounds like, this is considered _basic_
data structures and algorithms, material that can be covered in one CS class.
It's material you could learn through self-study over the course of a month.

For front end developers frameworks/stack/communication probably means
questions involving basic knowledge of jQuery and how the DOM works. Also
might include questions about anything you list on your resume (e.g. if you
list Backbone.js on your resume you might expect questions about Backbone's
MVC system, events, etc.). Also might ask you non-coding 'architectural'
questions where they ask you to describe in broad terms how you would
construct something.

~~~
chany2
Thanks, that definitely help with confirming.

It probably be more would one algorithm problem and then other questions about
frameworks.

Yeah good chance a lot of questions on technical ideation and architecturing
maybe a very open question, answered whichever tech language I prefer, or in
plain english if it has to be cited in a language I am not familiar with.

\-- From there, how I do you think I can prepare?

~~~
argonaut
Since they want to see how you communicate, you should also improve your
technical communication skills. How, I don't know.

You should consider studying basic algorithms and data structures. I don't
know what resource are out there. There are some MOOCs, and you could use
HNSearch to see what people have recommended before.

------
mercnet
I am a SQA engineer working on CFD software but eventually want to make the
jump to web development. When I am confident enough to start sending my resume
out, I planned on buying Cracking the Coding Interview: 150 Programming
Questions and Solutions
([http://www.amazon.com/dp/098478280X/ref=wl_it_dp_o_pC_nS_ttl...](http://www.amazon.com/dp/098478280X/ref=wl_it_dp_o_pC_nS_ttl?_encoding=UTF8&colid=3HU323C7NII2Z&coliid=I21BB463353CAB\)to)
help me prepare for a technical interview.

------
ethanbond
"Product developer" as in... what? That could be anything from CAD to supply
chain to full-stack to front-end. What does the company do/what is your actual
role/responsibilities?

~~~
chany2
More Front-End. Thanks for clarification.

------
amalag
The coursera algorithms course are great introductions.

------
notastartup
I'm also in a similar position, although I found that my experience of
shipping SaaS and software largely on my own is completely ignored. Never mind
the challenging software design decisions and the amount of unpaid work one
must put in before it starts to make money (software is hard but that's
because I'm an Economics major with no clue about engineering and only useless
information about the stock market I'm supposed to be able to predict). Not to
mention that I've actually worked as software developer at a company for 2
years because obviously what could a guy without a CS degree actually have
done such as changing and influencing the company's product design and
features?

None of it matters because I don't have a CS degree and apparently reciting
algorithms and your ability to solve it in the shortest time possible is an
absolute indicator of your ability to contribute to a tiny fraction of that
company's product that is far less challenging than anything I've done by
myself.

I've pretty much given up going to interviews and back to focusing what really
matters, ship more software and get rich.

~~~
chany2
I agree. I actually approach my learning in a very similar way. Thus I show
value by my portfolio of apps
([http://garyyauchan.com/](http://garyyauchan.com/)) with ideation and
designs, and codes I build through passionate googling.

Granted, the other view is that you need to know the "foundation" and the
"why" in order to solve problems more efficiently.

~~~
notastartup
extremely impressive portfolio I wish I had that level of output but I simply
don't, as I have tendency to work on one hard problem for years.

Half the stuff they ask in interview is did you work this open source software
and that, did you know this framework has X feature, can you tell me what it
is...I'm like all of this I can google and tell you there's simply no
difference, it's a matter when I googled it, but the other view is that they
want someone with 5 years of angularjs and mongodb experience in the hopes of
finding a multi-year veteran and expert in the myriad of brand new frameworks
and technologies that are barely mature.

