Whats the best way to enter into a coding career? Do you need formal education and degrees or just a good portfolio? What programming languages are needed? Should you know more, or should you be specialized? Do you even have to attend college or a University, can you enter into one right outside of High School? What are your thoughts and experiences?

And how do you go about finding a job in coding?

(I, myself, am looking for answers in relation to PHP Coding)

Accepted Answer

I'll share how I broke into coding, and hopefully it will be helpful to you.

When I was in High School, one of my teachers told us a story of when he was in college. He wanted a job as a DJ for the university's radio station. So, he bought one of those huge Rock and Roll Encyclopedias, and carried it around everywhere he went. A few months later when a position opened, he was offered the DJ job. Everyone saw him with that book, and assumed he was an expert in subject. The thing was, he never read a word of the book.

Now, you won't get a job coding simply by carrying around a PHP and book, and not reading it, but this teachers story inspired me to continuously learn new technologies and to do so conspicuously, letting everyone know in both subtle and non-subtle ways what you are learning.

Months after hearing this story, I was a a freshman at University, and I was very anxious to start coding professionally. I'd been coding in Atari Basic, and then (now) old versions of Visual Basic since I was 8 years old, and didn't want to wait until I graduated four years later to start making money with it. I was teaching myself HTML and (Classic) ASP on the side, and really came to like web development.

I wasn't very confident in my abilities at that point, and I just wanted to get some kind of a job working with computers at a company that had a development department. In that vein, I applied for a job at a local Internet Service Provider who was hiring folks to support their Dial-Up Internet service. I got the job, and I'm fairly certain it was due to the fact that I was carrying around O'reily's TCP/IP Networking book when I went to the interview and this impressed the interviewer.

After getting my foot in the door, instead of spending my lunch hours eating with people in the support department or alone, I'd walk up to the web development department and bug the folks there. I'd show them what I was working on for little side projects, and they'd show me what they were working on. I hang out behind them, watching them code (they didn't seem to mind) and soon I was making suggestions when they got stuck. A while later, I'd come up and volunteer to help code things (on my own) in the evenings when they were close to a deadline (for free).

After a few months of this, they offered me a job in the department, when one of the other developers left.

So in summary:

  1. Always be learning new things, and make sure people know you are learning them (Don't just fake it like my High School teacher)
  2. Work on your own development projects. This is the most important thing. You need to be able to show people your can actually get stuff done
  3. Don't be afraid to get a non-coding job to get your foot in the door.
  4. if you do (3), spend as much free time as possible working with the people in the company who actually do programming, but make sure you are providing value

Of course, this strategy wouldn't work for everyone, and wouldn't work at every company, but it can work.

Written by Tristan Havelick
This page was build to provide you fast access to the question and the direct accepted answer.
The content is written by members of the stackoverflow.com community.
It is licensed under cc-wiki