Jump to content

Programming and employment

Considering the fact that demand for programmers are high, what level or proficiency does a self learner have to reach until they can begin applying for jobs as a programmer?

Link to comment
Share on other sites

Link to post
Share on other sites

10 minutes ago, Samputio said:

Considering the fact that demand for programmers are high, what level or proficiency does a self learner have to reach until they can begin applying for jobs as a programmer?

It depends on the job you're applying for.

 

But typically you should know the basics of programming in general and be able to write basic algorithms. If you can create an application that does something other than "Hello world!" or repeat what a person inputted, that's probably enough experience for entry level positions.

Link to comment
Share on other sites

Link to post
Share on other sites

19 minutes ago, Samputio said:

Considering the fact that demand for programmers are high, what level or proficiency does a self learner have to reach until they can begin applying for jobs as a programmer?

I can tell you from what I know that if you are self-taught and don't have any experience, certs, or education to back it up... then chances are you will not land that position. The demand is high that is true, but more and more people are doing majors or minors that include programming at some level. So now it comes down to you vs someone who has a proven background outside of self taught... I can tell you which one will appeal more to an employer.

 

The best way to sell being self-taught is trying to incorporate it into a job. Like I worked for X and did X, but decided I could be more efficient if I could automate a few tasks... so I taught myself (insert language here) and used it to (insert examples).

Link to comment
Share on other sites

Link to post
Share on other sites

It depends on how high you're aiming. If you're hoping to be a programmer at Microsoft then you've got a LONG way to go. If your goal is to offer custom software solutions to very small businesses and you know how to write what they want then you could start immediately.

 

You gotta start a resume. If you need a challenge look into making software for small businesses.

Link to comment
Share on other sites

Link to post
Share on other sites

As developer jobs vary wildly in complexity, technology stack, and domain, there is no set "level" and skill sets aren't nearly as transferable as people make it out. One thing I have learned is that companies have no idea how hard tasks are...and if they don't know, there is no way you can know until you interview and get an idea of what they want. In a first role just try to learn as much as you can, do the best job you can, and remember that getting fired/rolled is par for the course and just another part of the learning process.

 

I'd agree with M.Yurizaki that you should be able to make at least simple, useful apps/sites/programs before applying.

Web Developer and Java contractor

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, programmer said:

As developer jobs vary wildly in complexity, technology stack, and domain, there is no set "level" and skill sets aren't nearly as transferable as people make it out. One thing I have learned is that companies have no idea how hard tasks are...and if they don't know, there is no way you can know until you interview and get an idea of what they want. In a first role just try to learn as much as you can, do the best job you can, and remember that getting fired/rolled is par for the course and just another part of the learning process.

 

I'd agree with M.Yurizaki that you should be able to make at least simple, useful apps/sites/programs before applying.


If I build a small but robust portfolio of projects that I'm able to explain from the top down, that would prove that I can take concepts, break them down, and then build them out into tangible real world tools. I would think this is 80% of the requirements for a junior dev, so then how about these points ->

 

2 hours ago, valdyrgramr said:

Well, a lot of programming jobs prefer you have a college degree.

and

2 hours ago, AngryBeaver said:

I can tell you from what I know that if you are self-taught and don't have any experience, certs, or education to back it up... then chances are you will not land that position.


If I can build and explain my process isn't that all that's necessary? 

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, Samputio said:

If I can build and explain my process isn't that all that's necessary? 

The problem with a lot of online job postings is that they're heavily automated and filtered. It's not unheard of for moderately sized companies to get tens of thousands of applicants a week, if not per day. You need something to filter out the chaff. So if the job posting is looking for a college degree and you don't put one down, your application is likely going to be immediately dropped.

 

The best way to land a job these days is to know someone who works for the company you want to work in or at least have some kind of connection. They can bypass all of that and get a resume directly to a hiring manager or at the very least, HR. And they should hopefully put in a good word for you.

Link to comment
Share on other sites

Link to post
Share on other sites

13 minutes ago, Samputio said:

If I can build and explain my process isn't that all that's necessary? 

Employers like a paper trail. They also want proof that you can dedicate yourself to something and complete it. The certs and degrees give them this, self taught doesn't. It does help you learn some essential tools and use them to improve yourself or help you automate currrent functions, but it doesn't have a good way of being verified when looking for a job.

 

Not only that, but as previously stated you won't even get an interview to bring this up most the time. I mean the truth is, if you are wanting to get very far in the programming field you are going to need a degree anyways. Even a 2 year programming degree from a technical college will open a lot of doors and even give you advancement opportunities. If you don't have the degree then experience can also open doors, but you aren't someone that has been doing this on the side for years for a small company.. you are trying to gain entry into the field.

 

So if you are serious about wanting to get in to programming register for a technical college (most of your tuition would be covered by pell grants anyways). Then you not only get a degree to help advance your career, but you also gains other tools and skills in the event you want to pursue another area of IT. That is another reason they like degrees, most of the time you still get a broad understanding of the field as part of that program.

Link to comment
Share on other sites

Link to post
Share on other sites

Demand are high for good programmers.

 

But market for mediocre and lousy ones are way too oversaturated.

 

which is why you see so many job posting looking for developers with 5 years+ experiences but hardly any for junior or entry roles. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

7 hours ago, Samputio said:


If I build a small but robust portfolio of projects that I'm able to explain from the top down, that would prove that I can take concepts, break them down, and then build them out into tangible real world tools. I would think this is 80% of the requirements for a junior dev, so then how about these points ->

 

and


If I can build and explain my process isn't that all that's necessary? 

One of the problems with giving advice is that your situation will unique to you as will any opportunities and challenges you face. It may take working a junk job for a while to get going (I couldn't find anything with my associates degree and had to do 2 years of Taco Bell before getting my first job a few weeks after graduating) but building a portfolio it will make it easier to get a first programming job.

 

It is possible that sheer serendipity will launch you on a career path where a degree isn't needed - just don't count on it. If you can get even a low pay programming roles or internships then you are creating a body of experience while earning money you can invest in yourself through either better equipment, training, resources, or a degree.

 

On that subject, unless you are wickedly smart and planning to spend a fortune going for a top rate computer science program, go for the most affordable option you can - middle of the road is a waste of money. I got my associates through a community college and my bachelor's online through a state college - once I had some experience on my resume, people only cared about which consulting firms I had been at and what kinds of projects I had tackled.

 

If you want to be successful take action - try, fail, and fail again until you make some progress. Then, when you get a "comfortable" job where everybody else gets lazy and stops - keep going and learning and trying new things. Hustle, be creative, and use your failures to move forward. Read books by smart men and keep an open mind. The world probably doesn't work the way you think it does and the rules probably aren't the ones you've been taught.

 

A final thought is that a lot of success isn't predictable or intentional, its setting yourself up for opportunities to happen and acting once they do. Even a bad programming job is a good stepping stone, and each opportunity you take will open new ones.

Web Developer and Java contractor

Link to comment
Share on other sites

Link to post
Share on other sites

10 hours ago, AngryBeaver said:

Employers like a paper trail. They also want proof that you can dedicate yourself to something and complete it. The certs and degrees give them this, self taught doesn't

Not true at all, just beucase you don't have a degree doesn't mean you can't have a paper trail. 

 

Github for projects and there are also package managers like pip, npm that you can publish a live package for other people to use.

 

I have a degree in computing science and it taught my very little of real world programming knowledge, things like version control, other paradigms of programming other than OOP.

 

It also showed me that education system is vastly out of date with most places (speaking from the uk) still teaching visual basic. @Nuluvius if free I'm sure will back me up on this.

 

Education is trash.

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
Share on other sites

Link to post
Share on other sites

At least, school education alone does not give you what economy demands.

Write in C.

Link to comment
Share on other sites

Link to post
Share on other sites

I'm under the impression that an average mobile / web app developer doesn't need a degree while someone who works in the AI / machine learning field needs PhDs or master degrees.For software development, it might not always be necessary but in CS fields it could be.What exactly do you want to work on?

Link to comment
Share on other sites

Link to post
Share on other sites

25 minutes ago, valdyrgramr said:

No, if you look at job listings they will say "Requires Bachelors".

Listing from id, https://jobs.zenimax.com/requisitions/view/1451  See, they want a Bachelors degree and experience in the field.  That's how most programming listings are.

Depends on the field, this is working on some heavy engine while Web development could easy apply to 

 

25 minutes ago, valdyrgramr said:

If I build a small but robust portfolio of projects that I'm able to explain from the top down, that would prove that I can take concepts, break them down, and then build them out into tangible real world tools. I would think this is 80% of the requirements for a junior dev, so then how about these points ->

 

and


If I can build and explain my process isn't that all that's necessary? 

 

Quote or mention me if not feel ignored 

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, valdyrgramr said:

The only people who might not care are small studios.  But, a lot require those with a bachelors of science in either ITS or Computer Science.

Maybe that's something he's intressted in

Quote or mention me if not feel ignored 

Link to comment
Share on other sites

Link to post
Share on other sites

6 hours ago, vorticalbox said:

Not true at all, just beucase you don't have a degree doesn't mean you can't have a paper trail. 

 

Github for projects and there are also package managers like pip, npm that you can publish a live package for other people to use.

 

I have a degree in computing science and it taught my very little of real world programming knowledge, things like version control, other paradigms of programming other than OOP.

 

It also showed me that education system is vastly out of date with most places (speaking from the uk) still teaching visual basic. @Nuluvius if free I'm sure will back me up on this.

 

Education is trash.

The language doesn't matter as much as the understanding of how to use it. Learning how loops, arguments, functions, etc all work is what is the most important. Languages just come down to learning the syntax, but if you understand how programming works then learning a new language is just a matter of time.

 

I am not going to say that what you learn in school is all going to be relevant to what you would do in the actual job market... or that it is even close to the same. Each place had their own methods and most of the time you are going to be learning crucial stuff on the job anyways.

 

What that degree shows them though is that you CAN be trained. That you are smart enough and dependable enough to finish a degree program so your chances of success are much higher than someone who was unable to, unwilling to, or just didn't care about it. They are looking for someone to invest training and knowledge in this isn't a cheap investment so they want to make sure they person they pick has the highest chance of success.

Link to comment
Share on other sites

Link to post
Share on other sites

Samputio, if are thinking about getting a degree - it will open extra doors and probably increase your earnings. One part valuable part of college is in the cache which only the top few schools have and networking with isn't relevant if your only meeting mediocre programmers who won't be launching business and looking to head hunt you into their projects. So if you do decide to go get that paper - get it from the cheapest non-profit school you can.

 

There are sites that rank colleges by annual cost - avoid any weird religious schools and if you plan to work in a certain state, a degree from one of those state's colleges may offer you more opportunities (I have gotten several roles because I went to the same college as a recruiter or hiring manager.)

Web Developer and Java contractor

Link to comment
Share on other sites

Link to post
Share on other sites

As a Java developer some of my collegues only have the java oracle certification (OCA or OCP) with OCA you could get a starter job, with OCP you are worth more than someone with just a programming degree.

Desktop

CPUi5-6600K MotherboardGigabyte GA-Z170-HD3P CPU Cooler: Thermalright True Spirit 120M Black/white RAM: Corsair Vengeance LPX 16 GB DDR4 2400Mhz GPU: Gigabyte 1070 HDDs: 2 x Seagate Barracuda 2TB 7200 RPM  SSDSamsung EVO 850 500GB PSU: Coolermaster 550W 80+ Gold Case: NZXT S340 (White) with a white led strip ;)

Laptops

Dell 7577

CPUi7 7700HQ RAM: 16 GB DDR4 2400Mhz GPU: GTX1060 Max-q HDD: 1TB 5400 RPM  SSDNVMe 512GB SCREEN: 4k IPS 15.6"

Macbook pro 2018

CPUi7 RAM: 16 GB DDR4 2400Mhz GPU: Radeon Pro 555X 4GB Storage256GB SCREEN: 15"

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, AngryBeaver said:

What that degree shows them though is that you CAN be trained. That you are smart enough and dependable enough to finish a degree program so your chances of success are much higher than someone who was unable to, unwilling to, or just didn't care about it.

This is a common thought in the thread, but isn't it true that a person without a degree who has a trail of projects that were built from hours of independent, self guided, self disciplined study is at minimum equal in terms of skill and arguable more impressive than the college grad?

I understand that the job requirements by default require a degree and it's presented in this thread as though it's set in stone. For this to be true, there'd have to be swathes of self educated programmers whose talent is going unused and ignored by companies. This doesn't seem likely to me. 

I'm appreciating the advice about getting certs/degrees without worrying about top tier institutions and just focusing on getting the paper as a door opener or stop gap regardless of where it comes from (within reason of course). 

And to clarify, I should have added it into my OP, but I'm not speaking about high end cutting edge development, I'm aiming for junior dev level work whereby I can continue to learn and work upwards. 

Good back and forth between both camps though.

Link to comment
Share on other sites

Link to post
Share on other sites

7 minutes ago, Samputio said:

This is a common thought in the thread, but isn't it true that a person without a degree who has a trail of projects that were built from hours of independent, self guided, self disciplined study is at minimum equal in terms of skill and arguable more impressive than the college grad?

I understand that the job requirements by default require a degree and it's presented in this thread as though it's set in stone. For this to be true, there'd have to be swathes of self educated programmers whose talent is going unused and ignored by companies. This doesn't seem likely to me. 

I'm appreciating the advice about getting certs/degrees without worrying about top tier institutions and just focusing on getting the paper as a door opener or stop gap regardless of where it comes from (within reason of course). 

And to clarify, I should have added it into my OP, but I'm not speaking about high end cutting edge development, I'm aiming for junior dev level work whereby I can continue to learn and work upwards. 

Good back and forth between both camps though.

I understand that, but even so most of the time you won't even make it to an interview without a resume that hits key points they are looking for. Those points are often experience, certs, and/or education requirements. Even entry level jobs for programming are going to want those things. It is just the world we live in now.

 

The only option you might have with your current self-taught status is to reach out to a contracting company that deals with programming roles... sometimes they have an in that you wouldn't have on your own. A lot of them are still going to want more qualifications, but at least if you try a contract company you can speak to someone and explain to them your situation then they can see if they can line something up for you.

 

In the above scenario you would start getting the experience, but probably not at the pay level you mght want. Just remember that the experience is worth something moving forward though.

Link to comment
Share on other sites

Link to post
Share on other sites

23 hours ago, Samputio said:

Considering the fact that demand for programmers are high, what level or proficiency does a self learner have to reach until they can begin applying for jobs as a programmer?

You should be familiar with the languages and frameworks which the employer has specified in the job listing, in addition to mastering the relevant theory related to software design and architecture (that is, believe it or not, almost equally as important).

 

Don't go around and apply for jobs as just a self-taught programmer unless you know that you've got the correct experience. Basic programming skills is just a small part of what you need in order to be a software developer, and if your ambitions revolve around the tech industry, you should definitely go to college.

Link to comment
Share on other sites

Link to post
Share on other sites

44 minutes ago, Samputio said:

This is a common thought in the thread, but isn't it true that a person without a degree who has a trail of projects that were built from hours of independent, self guided, self disciplined study is at minimum equal in terms of skill and arguable more impressive than the college grad?

Anyone can write code, the difficult bit is writing good code. Yes you can come up with some projects and put them on GitHub but who is to say the code is actually good?

 

I graduated University ~4 years ago in the UK, started in an entry level role and now lead a team of software engineers in a FTSE 100 company. Truthfully when I'm interviewing we will rarely have anyone in without a qualification of some kind, a personal portfolio is a welcome addition but I've seen some awful stuff in some personal GitHub accounts but we have a few within our department who didn't get a software engineering degree and either started at a small company or started in a different department and learnt what they needed to move into Technology.

 

As others have mentioned as well its not just about writing code, there are a number of other skills you need. I posted this list before but when interviewing I'm looking for all of these things:

 

  • Code standards - Learn what good code is and stick to it
  • Frameworks - Don't try reinventing the wheel. Cover front-end and back-end
  • Databases - You need somewhere to store data. Look at query optimisation & replication
  • Linux - You're going to be connecting to a Linux server using SSH at some point
  • Security - Do not forget this! Know how to write secure code, stay up to date on the OWASP Top 10 and know what encryption is suitable and when to use it 
  • Software Development Methodologies
  • Software Development Life Cycle
  • Testing - Unit & Functional
  • Continuous Automation / Delivery / Deployment
  • Version Control - Git
  • Other Standards - e.g PHP-FIG PSRs

 

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, Brenz said:

Anyone can write code, the difficult bit is writing good code. Yes you can come up with some projects and put them on GitHub but who is to say the code is actually good?

None of the skills you listed, including writing good code, is dependent on if a person has a degree. 

It makes sense that a top 100 company would prioritise degrees for the sole purpose of saving resources, because those who have finished a degree have gone through a defacto filter, I get that part. 

Does a completed computer science degree come even half way close to guaranteeing a person will come away with the ability to write good code and to hit those requirements you've listed? By most accounts, the answer is a big no. I have seen this sentiment from @vorticalbox more than I have seen its counterpart.  

 

12 hours ago, vorticalbox said:

I have a degree in computing science and it taught my very little of real world programming knowledge, things like version control, other paradigms of programming other than OOP.


I don't understand how someone can think of going into a programming field of any kind without daily experience with the things you listed @Brenz, it's contradictory how it all hinges on having a degree which in itself doesn't seem to do a good job at actually instilling the very practices you've laid out. 

Of course, I'm not pointing out contradiction in your comment, it's the way the industry is currently shaped that is contradictory. High quality, free, open source education is on the rise and eventually employers will find themselves dipping into the pool. If I was an employer I'd be keeping a more watchful eye on on that space. 

Link to comment
Share on other sites

Link to post
Share on other sites

20 minutes ago, Samputio said:

I don't understand how someone can think of going into a programming field of any kind without daily experience with the things you listed @Brenz, it's contradictory how it all hinges on having a degree which in itself doesn't seem to do a good job at actually instilling the very practices you've laid out.

Schools failing to teach what the real world is like, that seems to be a problem in general.

 

Though a lot of the what was listed in that post is either company specific or is not really useful or relevant in a wider schema of things. I find it more useful to be able to adapt quickly to what the company does rather than try to soak in as much as possible, only to find out you only really need like 10% of what you accrued. It is useful to know what those are on a higher level detail, but it's not useful to know anything specific unless you really need it.

 

Just picking one:

Quote

Version Control - Git

Every company or employer I've worked for uses SVN. So taking the post at face value and learning only Git would've done me diddly squat.

 

Besides that, I'd imagine most companies hire new people on the presumption they'll need a week or two to get used to how they do things.  So overall, I feel that it's kind of useful to know what those topics are, but those may or may not be of any actual use. Instead it's better to be able to quickly adapt to how the company does things.

Link to comment
Share on other sites

Link to post
Share on other sites

32 minutes ago, Samputio said:

None of the skills you listed, including writing good code, is dependent on if a person has a degree. 

It makes sense that a top 100 company would prioritise degrees for the sole purpose of saving resources, because those who have finished a degree have gone through a defacto filter, I get that part. 

Does a completed computer science degree come even half way close to guaranteeing a person will come away with the ability to write good code and to hit those requirements you've listed? By most accounts, the answer is a big no. I have seen this sentiment from @vorticalbox more than I have seen its counterpart.  


I don't understand how someone can think of going into a programming field of any kind without daily experience with the things you listed @Brenz, it's contradictory how it all hinges on having a degree which in itself doesn't seem to do a good job at actually instilling the very practices you've laid out. 

Of course, I'm not pointing out contradiction in your comment, it's the way the industry is currently shaped that is contradictory. High quality, free, open source education is on the rise and eventually employers will find themselves dipping into the pool. If I was an employer I'd be keeping a more watchful eye on on that space. 

If you can get a programming job right now, do so. It will give you real world experience and money. If you can afford to get a degree, consider starting courses. You may or may not learn, you may or may not finish, but the odds of it being a good investment are favorable - unlike a liberal arts degree, a bachelor's in computer science should be able to pay for itself fairly quickly assuming you didn't pursue courses at an exorbitantly expensive college. Get scholarships, get grants - spend the time and effort to get that free money.

 

It is fair to think of a degree as an insurance policy - if you can't get a job without it then its well worth it, if you get a job and didn't need it it will still likely increase you salary enough to pay for itself, and if you land something awesome and never end up needing to complete it - then you can afford the wasted dollars. But the main thing is to start hustling and looking for roles early - it takes several years, possibly painful ones, to ramp up and start climbing the compensation ladder and the longer you wait the more it will suck especially as your life priorities change.

Web Developer and Java contractor

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×