24 Replies - 4400 Views - Last Post: 12 October 2015 - 04:04 PM
#1
Programming Job
Posted 10 October 2015 - 11:22 PM
I want to get an entry level job programming or something similar in nature.
I'm learning c++ right now and I like it.
Don't want to go to school obviously. I learn way to fast to have to endure school for ~ 4 years. Plus I hate it with a passion. I never hear anything my teachers say, I just read the books and collect my 'A's.
Worry of not getting hired without a degree / feelings of mediocrity are out of the question.
Guys, please help me out here. I really want to do this, but I don't know how. Anyone whose done this and is willing to share would
really help me out.
My questions are:
What languages have the lowest barrier of entry / high turnover.
What books / resources will get me to an employable level.
Any other advice:
Replies To: Programming Job
#2
Re: Programming Job
Posted 11 October 2015 - 12:18 AM
And that's really kind of the problem here. It's not that you want to get a job without going to school for it - that's totally doable. The problem is the attitude, which suggests to me that you think you're just too smart to learn from other people, and frankly if that's the way you think you're not going to work well in a team. Nobody wants to work with a know-it-all, partly because they're annoying and partly because they usually don't know much.
Quote
What's obvious about this? What's wrong with taking the most efficient route to your goal?
(think about it this way: if you took a course and the professor started out by saying they knew nothing about the material they were teaching, you'd probably be pretty pissed. but that's exactly the situation you're in when you're self-taught)
Quote
I hope your code is better than your English. I got a parse error on this question.
Quote
If there were a book that could accomplish this magic, believe me, you'd know about it.
#3
Re: Programming Job
Posted 11 October 2015 - 11:20 AM
Quote
Meant to say highest monetary turnover.
Well of course there is no "one" book that will accomplish this. That's a given.
I'm interested in hearing from people who have gone down this route and maybe contribute a small guide.
eg. What books and resources they used.
#4
Re: Programming Job
Posted 11 October 2015 - 11:39 AM
POPULAR
I'm a developer without a degree. You want to know how to get a position without a degree? Work at it. It takes A LOT of work to prove you know as much or more than someone with a degree, like years of doing it and showing that to potential employers.
The arrogant attitude of you obviously not wanting to go to school is a put off. You never stop learning. Some of that comes from training courses that employers would waste their money on with you, because you stated you don't listen.
#5
Re: Programming Job
Posted 11 October 2015 - 12:08 PM
POPULAR
Look, trust me on this one. It's well established that human beings, in general, vastly overestimate their own competence. If you ask people to rate themselves on almost any skill they claim to have, and you tally the results, you'll find that 80% of the people surveyed are at least "above average". This is normal, and smart people are not an exception. In fact, they seem to be more susceptible to this effect than others. So it's not a crack at you when I say that it is almost certain that you are overestimating your capacity to learn on your own. This is a mistake, and it will make your life harder unless you get a straw and suck it up: your best bet to get established in a job working on software is to get into classes and learn from them. If you're not capable of doing this, you've probably failed before you've even begun, and it's more likely than not that in four years' time you will be still struggling with the material you'd cover in your third semester of a BA in CS, and you'll be unable to demonstrate to a hiring manager what it is you do know and why they should even think about bringing you in for an interview to find out how blindingly smart you are.
Okay, that's the lecture.
Some of the critical things you're going to need to go over will include:
* Core competency in some language. Informally, I characterize this as "the ability to write a non-trivial application in the language you've chosen". Alternatively, you might consider the ability to pass a standard Data Structures and Algorithms course using that language as sufficient proof of competency.
* Discrete math. Not generally critical for working developers, but any book you're likely to find that's worth using will include proofs that depend on a traditional discrete math course. Not having this course was one of the things that really made my life difficult, since I had to pick up the material on the fly - you might almost say retroactively. There are a number of textbooks aimed at the undergrad or (these days) at the high school student. The one that comes to mind for me is Knuth et al's Concrete Mathematics, and there's also one by Rosen that might be good, but I don't know what the standard texts are for this.
* Data Structures and Algorithms. You absolutely need to understand algorithms. Generally, this is needed to get past the whiteboard portion of the interview. Tim Roughgarden's course on Coursera is a good two-part survey of the field. He recommends several books to go with the course, probably the best-known and best-regarded currently is Cormen, et al.
Simply reading that book won't do the trick, I'll tell you right now. You need to argue about this stuff with people before it's going to sink in.
* Software engineering. Skipping the four-year path will spare you the trouble of taking some of the most interesting courses you can possibly imagine, but most of them will only make you a better programmer. Compilers, for example, is a great thing to have in your background, but given your plan nobody's going to hire you to write a compiler anyway, so you're only shooting yourself in the foot intellectually by missing it. However, you need to understand the basics of software engineering. This is the big one that honestly a lot of CS students don't get, but this includes the obsessive use of version control, testing your code, the ability to make a schedule and more generally some understanding of the various Agile methodologies and some experience using them. Some of this - but only some - is in books like Clean Code, Code Complete, Kernighan and Pike's "The Practice of Programming", and Joel Spolsky's opinionated, infuriating, and occasionally correct blog posts. The rest of it you'll get, if you're lucky, from participating in a well-run software development project. One way to get this is by taking a full-year software engineering course with a practical component. Another way to get this would be through an internship with a good software team. In your case, I have no idea how you're going to get this.
Some other books that you might find useful would include Fowler's book on Refactoring, and, what the hell, the GoF book on Design Patterns. That last isn't very useful, actually, but you might
as well know that it exists because you'll probably want to be aware of the idea of design patterns. Also, it's very useful to be able to say that you've got volume 1 of Knuth's TAOCP on your shelf and you're meaning to get around to reading it. That will always go over well.
#6
Re: Programming Job
Posted 11 October 2015 - 12:25 PM
astonecipher, on 11 October 2015 - 11:39 AM, said:
I'm a developer without a degree. You want to know how to get a position without a degree? Work at it. It takes A LOT of work to prove you know as much or more than someone with a degree, like years of doing it and showing that to potential employers.
The arrogant attitude of you obviously not wanting to go to school is a put off. You never stop learning. Some of that comes from training courses that employers would waste their money on with you, because you stated you don't listen.
Nobody said I was rushing into a high paying career. Yes I know that it takes a lot of consistent work, it being hard however depends on the person. To me "hard" is fun.
Both of you seem to be extrapolating from your assholes. I never claimed to be smarter than all the professors at all the schools. By the looks of it you are the arrogant one.
Why would I be stupid enough to tell my employers anything that would potentially lead me to not getting a job?
#7
Re: Programming Job
Posted 11 October 2015 - 12:32 PM
Look at this: https://www.smartrec...level-developer
This post has been edited by macosxnerd101: 11 October 2015 - 04:47 PM
Reason for edit:: No need to quote large posts
#8
Re: Programming Job
Posted 11 October 2015 - 12:32 PM
Quote
What the littlest I can do to make the most money.
Quote
I know more from the book and they can't teach me anything.
Quote
I have an artificially inflated ego on a subject I don't know, yet.
#9
Re: Programming Job
Posted 11 October 2015 - 12:33 PM
A7r1a5, on 11 October 2015 - 02:25 PM, said:
Brief pause to remind you to watch your tone. If you don't like what you're hearing, that's fine. If you disagree, that's also fine. But regardless of your personal feelings, you'll want to keep it civil. Okay? Great. Let's carry on.
#10
Re: Programming Job
Posted 11 October 2015 - 12:45 PM
A7r1a5, on 11 October 2015 - 02:32 PM, said:
Sounds great, assuming that a, they're on the level and not just one of the seemingly infinite series of semi-scam companies that have sprung up as programming started being seen as the hot ticket to wealth and glory and b, that you can demonstrate the following:
- Familiarity with an at least one imperative (Java, Javascript, PHP, C#, Objective-C, C/C++, Python, Ruby, etc.) or functional language (Haskell, Scala, F#, Clojure, etc). HTML/CSS alone are not sufficient
- Knowledge of web/mobile frameworks or SDKs complementing your language familiarity (i.e. Java/Spring/Android, Javascript/Angular/Express, PHP/Laravel/WordPress, C#/.NET, Objective-C/iOS, etc.)
- A project or portfolio of work, ideally hosted live either at a URL, in the App Store, in the Google Play store or available for live demo with your code hosted on GitHub or another social coding platform
- Strong problem solving skills
- Drive and eagerness to learn
- The ability to work full-time and desire for your apprenticeship to become a full-time job
So then you come out of that with three months' experience in the field and maybe some good recommendations. Okay, that might get me curious enough to call you in for a face-to-face. What are you going to do to keep my interest? What are you going to have to convince me that you're a better gamble than someone who has that three months's experience and those recommendations, maybe twice, plus four years' concentrated study at an accredited institution?
I'm not saying it's impossible, but it's not going to be easy.
#11
Re: Programming Job
Posted 11 October 2015 - 12:45 PM
From the posting you brought up:
Quote
This signifies knowledge of a problem domain. The kinds of projects in the portfolio are not "Hello world" or BMI calculators. They tend to want useful applications that demonstrate knowledge. 3 months of learning when starting out, you can't grasp the concept of a single language, regardless of how smart you are. You are looking at a year to understand a single language. Then, other languages come easier and faster.
This post has been edited by astonecipher: 11 October 2015 - 12:46 PM
#12
Re: Programming Job
Posted 11 October 2015 - 12:58 PM
jon.kiparsky, on 11 October 2015 - 12:33 PM, said:
A7r1a5, on 11 October 2015 - 02:25 PM, said:
Brief pause to remind you to watch your tone. If you don't like what you're hearing, that's fine. If you disagree, that's also fine. But regardless of your personal feelings, you'll want to keep it civil. Okay? Great. Let's carry on.
Eye for an eye.
I've always liked learning things the harder way because in the end I feel like I have a better autonomy over what I've learned. If teachers offer a passing grade for a good score on the final. I just skip everything else and start cramming the last weeks. It's always worked so far and I enjoy when things are harder than they are supposed to be. I embrace challenges.
I'm going to look at some school's CS curriculum, and read the books they list. I'll understand it one way or another.
I already intend to keep a portfolio of my works. I'm more interested in joining startups or becoming independent once I get some experience.
#13
Re: Programming Job
Posted 11 October 2015 - 01:16 PM
You prefer cramming the last few weeks to make life unintentionally difficult?
Your work habits sound like a nightmare and you would not last on a team with those traits. Shit comes up in projects, deadlines change, features don't work, other developers run behind, doing months of development in a shorter time, "because you enjoy the challenge" is a great way to screw your coworkers and piss off a client and your employer.
You want to work for a startup? Guess what the other extrapolator does? Hint: It has to do with startups.
As for the courses, There is a post in the Student Campus of the subject matter.
#14
Re: Programming Job
Posted 11 October 2015 - 01:43 PM
My approach while working would be different. I would attempt to finish anything as fast as possible and then keep refining it until the deadline.
Yea ill check out the student campus.
#15
Re: Programming Job
Posted 11 October 2015 - 06:03 PM
A7r1a5, on 11 October 2015 - 07:58 PM, said:
That is not an acceptable attitude. It's pretty much guaranteed to degrade conversations into pointlessness. If you feel somebody has wronged you, report it to the moderators and we will deal with it.
Also note that you are a new member, with no power over how this community is run or what is acceptable behavior here. Jon is a moderator; a highly respected member, trusted with that power. When he tells you to keep it civil, we expect nothing less. - A "clever" retort to that is nothing short of disrespectful.
A developers strongest attribute - assuming basic coding competency - is the ability to work well in a team; to be an effective member of a community. The absolute worst thing you can do when first entering a community is to start challenging how they work and behave. You don't get to decide how things work just because you feel you're smarter than the others. That's a privilege you earn over time. - Trying to prove you're the smartest person in the room is always a mistake. People really don't like that guy. (Trust me, I've been that guy plenty of times, and paid for it.)