4 ms·
I am a developer without a degree and transitioned from IT into development. I am in my last year of my Undergrad in CS now. What you need more than anything a
by locococo 9y ago
I am a developer without a degree and transitioned from IT into development. I am in my last year of my Undergrad in CS now.
What you need more than anything are skills. Ranging from networking knowledge to having a good command on linux. In addition you have to be able to program in Python, Java, JavaScript, C. You also have to understand data structures like linked lists, queues, b-trees..., and to top it all of understand algorithm analysis to judge the efficiency of the code you write or look at.
My recommendation is to get the degree, medium to long term you will need it, and it will benefit you greatly.
It seems to be popular to claim a degree is not needed for CS but if you want to do anything besides simple web apps then you will need the knowledge.
- saiprashanth93 9y agoLets go through this one by one: In addition you have to be able to program in Python, Java, JavaScript, C. This is objectively false. To expect a junior developer to know all these is unrealistic, plain and simple. If you have working knowledge of one or two programming languages and have an appetite to learn you are good to go. You also have to understand data structures like linked lists, queues, b-trees..., and to top it all of understand algorithm analysis to judge the efficiency of the code you write or look at. For 99% of the work out there, this is also not true. This is the horse crap that is fed to everyone so that folks can ask questions that have little to no relation to day to day development. If you are doing web development, then some knowledge of database query optimization will come in handy. But I don't remember the last time I had to figure out how a linked list worked whenever I was doing any server side or front-end optimization.
- Jeremy1026 9y agoAgree with your points, and want to add that I've been in the professional software world for 7 or 8 years now and I don't have an active working knowledge of Python, Java, or C. I do have Objective-C, Swift, PHP, and JavaScript. I can hack together some Java or C, and I can recognize Python. I think asking for full working knowledge of 4 different languages is a bit much for a Junior, or even Mid position. Ability to apply knowledge to a language is more important than knowing the ins and outs of a bunch of them from the get go.
- Fraztastic 9y agoTry applying for a job as if you don't have any professional experience. Almost everyone wants Python, Java, and something with 'C' in the name for junior positions. However, in my limited experience, they only (reasonably) expect (somewhat) in depth knowledge of one ecosystem and just syntactic knowledge of the other two. Took me about six hours to learn Python to answer the interview questions.
- gravy 9y agoFor the work it may be true, but there are lots of interviews that screen and filter on these kinds of questions. The other side of the gate may totally allow for learning and growth, but the gate itself is usually not as forgiving.
- locococo 9y agoI did not mean to imply being an expert in all the languages listed, but having some knowledge of them and being able to write code. I also think that an understanding of data structures is required to be able to identify the best way to deal with data in terms of processing and storage. It is equally false to say none of what I mentioned is required. There is a broad spectrum between your statement and mine, and the truth is somewhere in between. The better prospect for a job is in the area of knowledge though I hope we can agree on that.
- earenndil 9y ago> > In addition you have to be able to program in Python, Java, JavaScript, C. > This is objectively false. To expect a junior developer to know all these is unrealistic, plain and simple. If you have working knowledge of one or two programming languages and have an appetite to learn you are good to go. Still in school, so haven't had even begun to look at jobs yet, but I know python, java, and c (and a few others), and have a basic knowledge of js. Does that give me an edge, then?
- probinso 9y agonope; its actually not that uncommon for a college graduate; An edge may be gained if you vary paradigms for some companies (Procedural, Functional, OOP, Logical, Interesting Type System)
- dabockster 9y ago> You also have to understand data structures like linked lists, queues, b-trees..., and to top it all of understand algorithm analysis to judge the efficiency of the code you write or look at. While it's true that you need to know how to judge efficient code, the bit about data structures is HR bullshit. If the only indicator about an organization's coding styles during the interview is a bunch of cargo culted questions from HackerRank, then you should think about whether you really want to work there or not. Remember that hiring is a two way street. As much as you're offering them something, they're offering you a paycheck (among other things). Don't accept a bad deal just because their "innovative".
- locococo 9y agoI am not offering the ultimate truth here, just my opinion. However I notice that people seem to be offended by the notion that some knowledge of data structures is required. It's a very basic concept of how to efficiently handle and store data. I am not sure what people think a basic requirement for a development job is. Being able to learn is a very low threshold in my opinion, and how do you prove that when you don't have a degree and don't know the basics? See the catch there? Again, If someone want's to be a front end web developer what I am saying is most certainly not required. For anything else I think it holds though.