Advice on changing careers, programming

I’ve chimed in already (elementary teacher), but I’m considering a career change into programming. I have a master’s of education, so I think that’d help in getting my foot in the door at some type of educational tech startup. I also worked at Apple doing tech support for a few years before getting into education.

Anyhoo, those of you who are programmers, what advice could you give me to make the jump? I’m in Austin, TX where there are a couple of bootcamps (code academy and makersquare) that I’m thinking about attending. I’ve also started dabbling in some of the tutorials on codeacademy.com.

1 Like

There is a difference between a coder and a developer.

You can teach someone to code, you can’t teach someone to be a developer.

Can you code now?

If yes, you know the answer already.

If not, go code now, and then you will know.

Why exactly do you want to be a programmer, and what field(s) and technolog(y/ies) interest you?

PS: Don’t listen to me, I’m not a programmer and don’t know what I’m talking about. Some proper programmers will come along soon enough.

3 Likes

I started my career as a graphic and web designer after getting a degree in Visual Communication.
I decided, after doing some fun projects in Max/MSP and SuperCollider, that programming was awesome and totally for me.
I’ve been a musician my entire life, but never really thought it could net much money; entertainers get all the money.

I went back to school and got a degree in CompSci, which was super hard because I suck at math.
I REALLY suck at math.
Like, I had to take beginner and intermediate algebra before going on to college algebra because I spent high school getting high, drawing and making music, and making fun of things like math; that’s how bad at math I was.
Of course, I then went on to advanced physics for engineering and calculus and linear algebra, etc, but, in the beginning, it was really, really rough.

So after receiving the degree, I’ve been in design and development for web/desktop applications and interactive media for around 10 years.
I’ve worked at companies like Electronic Arts, Insomniac Games, and Symantec, which is where I now work in Silicon Valley.

It’s been quite an experience, but let me ask you a few questions in return.

[ol]
[li]How do handle stress? This is an extremely stressful job and, at the end of the day while the designers, artists, producers, and PMs are dancing around, watching YouTube, and jerking each other off about “our” great work, you will be fixing bugs until the last minute. Most nights after everyone goes home to get ready for parties and to continue jerking each other off, you will be at work fixing bugs.[/li]
[li]Do you like being thanked? That will NEVER happen. Some VP will come around, snap-clapping, and thank “the team” and you probably won’t hear it because you’ll be fixing bugs.[/li]
[li]You know those people who go to other countries and take a little book of translations and walk around fumbling and fucking up the language? Welcome to how everyone you come in contact with on your team will talk to you for eternity. People who don’t program yet are in proximity to it assume “they get it” and will say the dumbest shit and you have to swallow it and cry through their boring, inane bullshit. The same way artists who can make a fucking box think they understand UI/UX design; that’s for another day.[/li]
[li]Do you LOVE to program? Really, REALLY love to program? Well, you better, because as soon as HR or your team get even a whiff of your abilities at it you will never be considered creative again and no matter how awesome you are at X, Y, and Z creatively, you will be thrown back into programming and will be made to sit in a little cube, or little office if you’re lucky, and work on code because it’s a very rare commodity and no one else wants to do it. NO ONE.[/li]
[/ol]

Ever wonder why programmers get paid so much?
It’s because of the aforementioned reasons.

On the other hand:
[ol]
[li]You will be able to “see the Matrix”; IE nothing is a mystery anymore. Any software, electronic system, piece of gear, piece of hardware, you-name-it will become transparent (within reason, YMMV) because you have the intrinsic tools to reverse engineer it and improve on it. It’s rather quite exciting as an artist to think of systems I can make without just basic linearity. Drawing, non-interactive music and audio, and linear video are a thing of the past. I can now make exciting, beautiful, reactive stuff that blows minds, after I’m done wrestling with architecture, improvements and fixing bugs.[/li]
[li]You will get paid more than your counterparts earlier. Wanna buy a bunch of Elektron shit? Like seeing mountains of boxes show up at your desk while the sad ass designer across from you eats ramen and cries? Buckle up. I once bought 4 synths with one bonus and my paycheck hit my bank account the day after and I bought another one just to play with my toes and flip people off.[/li]
[li]Companies will, initially, treat you like a king. They need you. Fuck, THEY don’t wanna do that hard ass shit, so they’re gonna fly you out to them and cry at your feet because some dickhead built their system and escaped to Google or something and now they’re totally fucked and need your, or anybody’s, help maintaining it. I’ve done dozens of interviews and all of them have been like all expenses paid mini-vacations, even if you don’t take the job or they don’t give it to you.[/li]
[li]Depending on where you work, no one actually knows what you do. It’s like your mechanic saying you need a fucking Johnson rod or blinker fluid. I could tell my manager I’m learning a new language called fucking Spunk and he’d believe me. In fact, I’m at work right now typing this and my designer co-worker literally JUST said “Damn, you’re working hard to get that feature out, huh?” because she thinks typing equals work for me. Whatta MAROON! That bitch thinks the internet is a series of monkeys stuffing shit into different tubes.[/li]
[/ol]

All of this is meant to be comical and your mileage may vary, of course, but it’s just a part of the world of dev.
Watch Office Space and Silicon Valley and, believe it or not, that’s really A LOT like what it’s like.
Some jobs are cushier, however, like doing web development for advertising at places like Frog (you have one downtown) or NCS Pearson (you have one near Round Rock).
Some are way harder; depends on what you wanna do.

I would suggest really thinking about what kind of development you intend to do and then start small.
HTML/CSS-Sass-Less/Javascript and its many APIs and frameworks are pretty easy to get into and will give you more visual feedback to get started.
DON’T START WITH C++!
It’s too low level and too hard to do basic stuff early on.
If you want to do mobile start with Java or Swift for Android and iOS respectively.
Even web dev tools can help build multi-platform responsive apps with things like PhoneGap where you don’t have to learn the native languages for those platforms.
There’s a lot of options, so just think of what you want to do, play around and then, if it’s still fun and interesting, move forward to professional work.
Like everything, it’s fun, but after you do it everyday for years and years it loses it’s luster REALLY quickly.

Take it slow and have fun and then decide if it’s what you really want to do FOREVER forever or if you just want to do it for funsies; like me and building synths with old Curtis chips.
I ain’t doing that on the daily.

For TL;DR people -

14 Likes

I definitely cannot code now, which is why I am thinking of attending a coding bootcamp.

I want to be a programmer because

  1. I have a family and a teacher’s salary is very hard to live off of, especially in an expensive city like Austin.

  2. I would be interested in web/app development, probably in some kind of educational capacity.

Diapause

  1. How do you handle stress?

  2. Do you like being thanked?

  3. You know those people who go to other countries and take a little book of translations and walk around fumbling and fucking up the language?

  4. Do you LOVE to program? Really, REALLY love to program?

  5. As a teacher, I definitely handle stress pretty well. Having a cacophony of students asking you questions and not losing your shit has taught me a lot of patience. On top of that, dealing with staff/admin/parents has also taught me to keep my negative stress in check.

  6. Well, there is teacher appreciation, but other than that, thanks don’t come too often.

  7. I experience the same with people I work with everyday.

  8. This is the one question I really can’t answer as I barely have any experience with coding (other than an html class in high school and a little bit of max/msp experience). I’m not a huge fan of math, but the more I read the more I learn that math is not necessary at all when it comes to most types of programming. From the little bit of coding I’ve done via tutorials, I’ve had a lot of fun tinkering and figuring out how things work.

As for where to start, I think I am going to begin with HTML/Javascript etc and maybe more into Java for Android.

Thanks so much for the advice, it was really helpful!

2 Likes

I would encourage you to learn both the HTML/Javascript/CSS stuff and some kind of compiled language like Java/C#/C++ (I know Java and C# are only half compiled, so don’t nit pick me on that).

My other advice would be to try to focus on only the tech that will get you into your first job.

1 Like

[quote="“glaciertree”"]

I would encourage you to learn both the HTML/Javascript/CSS stuff and some kind of compiled language like Java/C#/C++ (I know Java and C# are only half compiled, so don’t nit pick me on that).

My other advice would be to try to focus on only the tech that will get you into your first job.[/quote]
Good advice.
I work as a contract Data Analyst in the Tech department of a B2B publishing company in London.
Check out all the online courses available, there are loads on iTunes U.
Or you could be like me and become a database SQL/Excel bod (basically I am a fake geek).
There is good money to be made, but if you like tech and education why not think about training, recruitment or Sales? That is, you are in a front facing role already, maybe move to something else front facing.
Or, if you like teaching, is there no scope to move into private schools, or become a freelancer?

1 Like

I have been a Java developper for a while now and sometime i wish i was a teacher hahaha :slight_smile:
I dont see myself coding for the rest of my life but thats just me.

One of my best friend teach computer science at college.
In Quebec, Canada, teachers has very good conditions, less stresse and dont work during the summer :slight_smile:

Web development is quite in demand where i live. Java and C# mostly.

Good luck.

1 Like

If you add some database/SQL coding and Web Services SOAP/XML with Java/C#, you will certainly have a very marketable set of skills for a lot of companies.

1 Like

I have taught overseas for about five years. I moved back to the states and studied computer science for a couple years. I’ve learned much more after school.

I would say:

  1. Do you have the patience for two to four years to get the degree?
  2. Are you prepared for rejection? Many entry level positions require experience.

This is based on my experience in switching to the technology field. You are in the right location, however. I was recently in Austin for the psych fest, which was wonderful. While there I heard there are plenty of software positions. Unlike with me in 2008 Detroit area, you are considering this change when the economy is doing rather well for technology positions. You also might consider moving to place where things are a little cheaper.

I believe it is the right decision to get into programming, technology, etc.
C# and Android Java is very easy to learn. There are some Visual Studio add on tools (JetBrains Resharper, they also make the free Android Studio now). Consider learning a little bit of everything (web, embedded, mobile). You might not even start as a programmer, but might start in a position that will lead towards it, like QA or support.

1 Like

I’m a software engineer, developer etc.

Start coding in your spare time; write something you can place on Github for example.

Do you know any languages, like C# or C++?

Which platform do you like: Windows? Mac?

Oh, don’t dabble. Get stuck in!

1 Like

Been coding and managing coders for almost 30 years now. I’m ready for a change. Wanna switch?

The best way to get started and immersed is to have a goal. Pick something you’re interested in and use that as your programming goal. Maybe an interactive teaching tool for your kid(s), or something like that. It doesn’t have to be something completely new, but it does have to be something you’re interested in.

Once you have a goal, then learn the language(s) and techniques to implement that. Driving a project you’re interested in to completion will give you a feel for what’s involved and whether you enjoy the long bouts of tedium and frustration punctuated with sporadic success.

BTW - a trained programmer would likely first sketch out the requirements (or have them given to them), draw out or mock up the basic screens, data flows (what are your inputs, what is the output), and some basic usage flow (how to start up, how to save your work if applicable, main app usage, error conditions, etc) before jumping right into the code.

4 Likes

I definitely cannot code now, which I why I am thinking of attending a coding bootcamp.

Um… That is like me saying I want to become a lawyer by attending an 8 week paralegal class and then taking the bar exam. No offense when I say that, but I hear this same thing a lot.

I have been programming since I was a kid. Programming is about problem solving, it’s about being a hacker in the truest since. Sure you can go to a bootcamp, you can go to college for it, but that doesn’t make you good. If you came to my company and I interviewed you, none of that matters. The only thing I care about is can you solve my problem in code the correct way.

Seriously take what Diapause said to heart. This career sucks, but I couldn’t imagine doing anything else. It’s like the girlfriend you can’t break up with. She is great in the sack, but has the most annoying laugh.

How do you take getting called at 2 am because the code you wrote took down a dozen servers? Or allowed foreign hackers to redirect your websites visitors to a porn site? How did they get in?

The problem with learning to code, is it is not just about code. Coding is easy, being good at it is the hard part.

I am the CTO of a company that deals with hackers on a daily basis, we build sites for hundreds of clients, and everyday I play firefighter. All day long I put out (IT) fires. I may be a little cynical when it comes to this stuff, so take what I say with a grain of salt. The grass is always greener on the other side, but the pay on this side makes it all worth it.

To Diapause’s point, everyone left 2 hours ago and I am waiting for my team to finish fixing bugs.

1 Like

glaciertree

Thanks for the advice. I’m currently signed up to take a course in python and I’m also taking some tutorials on HTML/Javascript/CSS. We’ll see if I like it.

mickeyziggyk

I’m actually in the midst of applying to some jobs at Apple since I worked there for a few years before teaching. As long as the pay is substantially better, I’d be more than happy to move to a front facing position at Apple.

As for private schools, they typically pay terribly or just as bad, though the system you’re working under is often a lot more flexible and constructive than whatever the state has to offer. Not sure what kind of work I could get as a freelance teacher, so that’s probably out.

sovietpop

My masters is in elementary ed., so I’m not sure if I’d be able to easily transition to community college, but I might look into that.

As for web development, that’s the area I’m going to focus in on to see if I like it enough to make the jump from teaching to programming.

udenjoe

I believe it is the right decision to get into programming, technology, etc.

  1. I finished a masters in 2012 to become a teacher, so I’m really not keen on going back to school. Just too time intensive and expensive.

  2. I suppose you’re right in that if I don’t really do my homework before applying I’ll set myself up for a lot of rejection.

As much as I like being around kids, I really need to find a job that’ll provide more for my family. I love computers and have done everything from video work to sound design, but I’ve never made the plunge into programming, mostly because it’s always seemed so intimidating (I’m not terribly good with math).

imekon

I’m trying to do that, though, with work and family, it’s been hard. We have about a week left of school, so I’m going to try and start focusing more to really get “stuck” into some of these tutorials.

I don’t know any languages at this point and I prefer OS X (currently running a lenovo laptop with no screen that i hacked to run os x).

oldgearguy

Haha, possibly maybe up for switch ? :wink:

And I totally get you on having a “goal” in mind when it comes to programming. Everything I’ve read says to focus on a project/goal and then work your way to achieving that through programming.

EarthquakeLogic

From what I’ve read, it’s not terribly difficult to jump into programming as long as you’re dedicated/disciplined. Also, a lot of the bootcamps that are out there seem pretty promising in that they both educate you on how to program and how to find a job.

Though, I totally get what you’re saying in that programming isn’t something I can willy nilly pickup without a hitch.

I suppose I’m coming at this from a position of being really interested in using computers and a puzzle solver myself. I installed linux on my computer when I was 14 and learned all the necessary commands to navigate my way around it. So, I think I have what it takes to become a competent coder, I’m just trying to figure out the best way to get there.

There’s a small part of me that just wants to make teaching work, but in all honesty, I don’t think that I can make enough money to live comfortably. I’m currently working Sundays as valet just to ensure we have extra cash in case something happens. I got into teaching before I had a wife and kids, and now that I have a family, I’m realizing that it just does not pay enough.

By the way, a big thanks to all that offered advice. Much appreciation!

1 Like

There’s a small part of me that just wants to make teaching work, but in all honesty, I don’t think that I can make enough money to live comfortably. I’m currently working Sundays as valet just to ensure we have extra cash in case something happens. I got into teaching before I had a wife and kids, and now that I have a family, I’m realizing that it just does not pay enough.

Then go back to school and get a degree one level higher and teach at the university level.
The biggest mistake someone can make is to take a job solely for money.
If you think that money’s your biggest problem wait until you become a developer and have to spend 12 hours a day away from your family.
Then what’s the change in profession worth?
Now you can comfortably pay for a family you don’t get to see as often?

My point is; there’s other jobs you can get that pay you more money than teaching that aren’t programming.
Web/UX/UI/IxD Design would net you a much higher return than teaching in Austin and wouldn’t be nearly as taxing.
It takes less technical skills, but the same passion for new technologies and problem solving.

A lot of coding is like following steps to install Linux, but there’s a lot of problems that are much, MUCH harder and cannot be solved with a basic formula or tutorial and you’ll be expected to know how to solve that stuff or stay at work until you do.
If programming was like a cookbook then why the hell would anyone hire you to make anything?
Just buy the book or framework and forego hiring developers altogether.
Developers are expensive; most places would love not to hire us.

It concerns me that you somehow think that advanced mathematics will never touch what you do if you become a programmer.
To be a real developer you’re going to have to understand data structures, algorithms, Big O notation and a bevy of other considerations just as a start.
If you don’t know it, guys like both EarthQuake Logic and myself will be in your interview and we WILL suss you out in a heartbeat.
Sorry, no job for you.
There’s a dozen other candidates behind you at the door who know it.

A bootcamp will give you training on the syntactical details of a language, but it will not prepare you for solving insanely hard problems that are Computer Science specific and don’t have a blueprint.
Computer Science doesn’t mean learning Swift, Java, and C++ which the maniacs on this board seem to believe it does.
It’s learning to define what’s computable and turn it into a working algorithm so, regardless of the platform or language, you can make something robust and extensible that can run for the foreseeable future without hiccup.
I’ve worked on dozens of jobs and, while I have a vast toolkit of tech to draw from, the language is immaterial.
The training I have to solve problems with anything down to an assembly level is what really matters.

2 Likes

Most definitely, and that’s a big concern for myself. It’s really hard to beat the schedule that I have in that I get to spend every holiday, and then some, with my family (and/or elektrons).

And yes, mathematics are not my cup of tea. It seems as if web/UX/UI/IxD design might be more up my alley, but even then, I don’t know if the extra $10K+ I’ll get paid will be initially worth it…but I’m sure there’s plenty of room to move up.

More than anything, I just need to get my feet wet this summer by learning as much as I can on my own before going any further. If over the next year, I realize this is something I really enjoy, then I’ll take the jump and try a bootcamp during my summer vacation where I’ll be able to focus everything I have. Until then, I’ll continue to learn what I can on my own.

This all sounds like solid logic.
Trust me, if you weren’t in a tech hub I’d never recommend you working towards the design field, but I lived in Austin for several years and many of my friends in professional design were easily scraping or clearing six figures.

If time isn’t a factor, take a year and see what grabs you.
Remember, the best parts of what you love are usually the rarest parts of the profession, so find something that you love down every part of; warts and all.

You got this.

2 Likes

There’s way more to life than money. Chasing the ££$$ brought me nothing but misery longer term.

I worked as a software developer (bits of coding, design, project management, whatever) for the best part of 20 years. Everything that’s been said on here about interminably long days is absolutely true. What’s more is that the projects I was working on were with me 24/7. I would dream about the problems and wake up with the solutions. It drove me crazy.

I found that to be a genuinely good programmer it was necessary to dedicate your every waking hour to it. The best guys I worked with after a day of work would go home and code some more. For fun. I wasn’t prepared to do that and to some degree I struggled, but my heart wasn’t really in it… I loved too much other stuff - people and music primarily. :slight_smile:

I wouldn’t want to put you off going into programming and there’s a big dose of YMMV here. Just go into it with your eyes open and know that it’s something you will have to live and breathe and love to make the best of.

1 Like

The best guys I worked with after a day of work would go home and code some more. For fun.

That’s what I do. I’ve been at this for 30 years and it still fascinates me. Though my focus has changed.

Initially I felt I was drifting, then found GUI’s. Got passionate about that one.

Then got to work for an audio company on sound card device drivers - partly because of my hardware background. Low level programming 8). We moved to middleware for games, then that job died. I joined a games company working on their audio technology.

I worked normal hours all this time. True, I don’t think my pay has risen that high but I’ve done what I’ve wanted to do.

Now that I’m out of the games company, finding something involving audio has been hard. I’d love to work on the UI for a synthesiser (hardware or software) or something related. So I do that in my spare time.

Must start looking into the sysex messages and see if I can figure out how they work for the A4 and Rytm.

2 Likes

If you can install Linux and learn the command line on your own, and you are a puzzle solver, then I have faith you can do it. I would recommend and easier language than C# or Java to start with. Maybe a scripting language like Python or Ruby or JavaScript. Especially if you are getting into web stuff.

Ruby on Rails developers easily make low $100K figures, same with competent JavaScript developers. Most C# devs I know are in the high $90s. Not that that is a reason, but I have seen a lot of shops jump from old Java and .Net architectures to Rails or Node.js models.

You may want to check out OneMonth.com for some intros, Code School is good if you know what you are doing, but I have seen a lot of guys struggle with their curriculum. Lynda.com and Team Tree House also have some good courses.

You could also pick up Learn To Program by Chris Pine. It is a solid book and I used it to teach my kids to program.

1 Like