Author Topic: Looking for career advice from mustachian engineers  (Read 8866 times)

NestEggChick (formerly PFgal)

  • Stubble
  • **
  • Posts: 238
  • Location: Boston-ish, MA
    • Nest Egg Chick
Looking for career advice from mustachian engineers
« on: February 03, 2013, 12:31:55 PM »
I'm looking into new career options and I'd love some advice from folks in the field. I want to get into tech, and I'm debating which path to take.

If I could go back to my 18-year-old self, I would have told me to become a software engineer, but I think it might be too late for that now. My understanding is that I couldn't really do that without a degree in the field. Is that correct? On the other hand, it seems that web development is the new up-and-coming area and can be done without a degree. I am willing to take a few courses, maybe get a certificate (usually 5-6 classes) but I do not want to get an entire degree. The truth is that I hated school and I would be miserable if I had to spend years studying in a formal setting again. I have a bachelor's and a master's, but in liberal arts fields. On the other hand, I am happy to learn on my own or through a mentor, so learning itself isn't the issue.

I have been learning basic html, css, and javascript through codecademy.com and so far I'm enjoying it. I need to find some more thorough online courses, and I am wondering in which direction to go. Should I be pursuing php and python, or java and c++, for example?

I am mostly wondering about the differences in the day-to-day work in the different tech careers, as well as the career path opportunities. Salary is not an issue, since until now I always worked in nonprofit and even a minimal starting tech salary will be more than I've ever earned before. I am 33 and would be looking for jobs that would not require another full degree. I would also need a job that could be done at least in part from home (this is non-negotiable, due to health issues.) Obviously, working from home one or two days a week would depend on the specific employer, but I need a field where it's possible, since in some areas it isn't. I live near Boston, so there should be jobs available in just about any area you can think of. I like to work independently - give me the basics and let me run with it! I hate having someone stand over my shoulder, micromanaging. And I love solving puzzles. Actually, I've been thinking I could be a good debugger.

So what do you think, oh wise mustachian engineers of the forum? What are the different careers like? What are the pros and cons of your particular field? And can you suggest something I haven't thought of? I'm open to anything!
« Last Edit: February 04, 2013, 09:02:42 AM by PFgal »

Spork

  • Walrus Stache
  • *******
  • Posts: 5742
    • Spork In The Eye
Re: Looking for career advice from mustachian engineers
« Reply #1 on: February 03, 2013, 01:25:34 PM »

I've been in a mix of IT/support/software engineering jobs for over 20 years now.  My experience is that there ARE lots of folks in the industry without degrees.  While I do have a CS degree -- every place I have worked has had one or more that does not *AND* is considered "the go to guy".

Now... I can't say whether you'd be "that guy".   But I can assure you that the degree itself isn't what makes the top guy a top guy.

There are areas where degrees are absolutely required: Doctor, Lawyer, etc.  Otherwise, it's a tool that gets your foot in the door.  It also might be a means of getting a higher starting salary... but 4 years experience (instead of a degree) will also give you a leg up on starting salary (if you can get your foot in the door.)

spider1204

  • Stubble
  • **
  • Posts: 244
  • Location: Lexington, KY
Re: Looking for career advice from mustachian engineers
« Reply #2 on: February 03, 2013, 02:12:09 PM »
I got myself a software engineering in job without a degree in CS, although my degree was in a related field (EE).  I would look into Coursera as they have a lot of great software engineering classes, currently taking Introduction to Programming Languages myself.  There are definitely a lot of folks in software jobs without degrees.  Even taking programming classes, 95% of the learning for me happens by self actually sitting there doing the work.

Also, I wouldn't worry too much about particular languages, just get good at programming concepts in general and you can transfer those skills to any project.  Having said that though, when it comes to the actual job search you will come across people that are particularly interested in certain languages/platforms, but when you're ready for that you can spend a little time focusing on hot technologies.  Mobile development was really hot when I graduated a couple years ago, mentioning that and having a few sample applications had recruiters contacting me all the time.  That's key though, have a portfolio of successfully completed software projects will show employers a whole lot, and go a long ways towards skipping that degree.

Onlyif

  • 5 O'Clock Shadow
  • *
  • Posts: 10
Re: Looking for career advice from mustachian engineers
« Reply #3 on: February 03, 2013, 02:41:31 PM »
Have you considered other tech careers outside of straight programming?  Most of the developers I work with have CS or software engineering degrees,  few of the other tech people do.  Consider some of these tech careers, all of which involve lots of problem solving and most companies allow some remote work.

- System Admin - Linux/Unix Admins do lots of quick and dirty programming, scripting, perl, automating things, alerts etc but only about 1 in 5 I've met have Computer related degrees
- SAN admins
- Backups admin
- Security/Firewalls
- Vmware

The list goes on and on,  for every programmer there are many other tech people.  I would think it would be harder to get your foot in the door to a software development job without a degree then any of the others listed above.

One other thing,   read the job postings,  see what's in demand and get those skills.

NestEggChick (formerly PFgal)

  • Stubble
  • **
  • Posts: 238
  • Location: Boston-ish, MA
    • Nest Egg Chick
Re: Looking for career advice from mustachian engineers
« Reply #4 on: February 03, 2013, 03:03:19 PM »
Thanks everyone! OnlyIf, I'll check out those other jobs, most of which I'm unfamiliar with. My master's degree is in linguistics, where I focused on syntax, so that's probably why I first though of programming, but I'm certainly open to exploring other areas. I have also been the "go to person" in other jobs because it's in my nature to learn how to just get things done, so there might be something there.

For anyone who works in these fields, what do you see as the pros can cons of your job?

Spork

  • Walrus Stache
  • *******
  • Posts: 5742
    • Spork In The Eye
Re: Looking for career advice from mustachian engineers
« Reply #5 on: February 03, 2013, 03:54:30 PM »
so... OnlyIf pretty much described me to a T.  I started out in software engineering and migrated to unix/linix/firewalls.  (I did this back when you couldn't buy firewalls, you had to make them yourself.)

pros:
* you generally get to finish projects.  (not all software engineering is like this!)
* often the projects are small enough that it's YOU.  You don't rely on others.  You build it, test it, maintain it.  (Some might see this as a con.  I see it as a pro.)
* pay (with experience) is pretty decent
* you get the whole problem solving/puzzle solving thing (assuming you like that)
* often there is the challenge of "no budget/do it for free".  (Yes, mustachian even in business).  This is where Unix/Linux shines.
* there is a bit of a "community" and people LOVE to brag about their solutions (and share them with you).

cons:
* often on call 24x7
* I've found that this is a "big city job".  I worked this in the big city for almost 20 years and there was ALWAYS plenty of jobs around.  I moved to a small town and it took 3 years to find a job.  There was literally 1 job opening every 6 months. And, in the small cities, it doesn't pay great.  (There are other awesome advantages here to offset this, which is why I left the big city.)

Sparafusile

  • Bristles
  • ***
  • Posts: 335
  • Age: 42
  • Location: Indiana, USA
Re: Looking for career advice from mustachian engineers
« Reply #6 on: February 03, 2013, 07:01:44 PM »
I currently work as a software engineer. Just a heads up, HTML and CSS generally aren't considered programming in this day and age. Usually, a SE is also expected to have already mastered JavaScript as well. If you really want to get into the profession, learn C#. Everybody I talk to is looking for C# programmers and is having a hard time filling positions. When the economy is down SE professionals are in high demand because we are less likely to leave our job and the good ones are already employed.

Education and certificates, I have found, are almost useless compared to experience. If you can tell a recruiter that you've been programming in C#/.NET for two or more years you'll get a job no problem. Get some projects under your belt, have some code you'd be willing to show, and keep learning everything you can.

icefr

  • Bristles
  • ***
  • Posts: 325
Re: Looking for career advice from mustachian engineers
« Reply #7 on: February 03, 2013, 07:24:16 PM »
I work as a software engineer. There are tons of people around without degrees. I think it was easier many years ago, but I'm sure it's still possible today.

If the company is a Microsoft shop, C# is helpful. Most other places are Java and old places are still C++. Web dev is some combination of PHP, JavaScript, Python, and Ruby on Rails, completely dependent on the company. HTML and CSS aren't really needed, but don't hurt to have. I've done some web dev and not really used them. JavaScript is far more useful.

Nords

  • Magnum Stache
  • ******
  • Posts: 3421
  • Age: 63
  • Location: Oahu
    • Military Retirement & Financial Independence blog
Re: Looking for career advice from mustachian engineers
« Reply #8 on: February 03, 2013, 08:04:05 PM »
If I could go back to my 18-year-old self, I would have told me to become a software engineer, but I think it might be too late for that now.
I don't know much about the software engineering career field, but I know something about regrets.

How much later will it be if you wait for a few more years?  Will the opportunity ever be better than it is this month? 

Maybe you could figure out a way to give yourself 12-18 months to experiment with software development (either as a side hustle or as a new career) and just add it to your resume as a skill-building bullet.  I suspect that you'll be able to get enough certifications to persuade potential employers that you already have the skills, and you're just learning to use a different set of power tools.  Even if you did college projects with Zuckerberg or Schmidt, employers will still want to see that you can solve problems, work with a team, and meet deadlines under budget. 

At the very least you could get involved in a crowdsourcing project like WordPress (either the Codex or plugin development) or smartphone apps.  You wouldn't have to make a gazillion dollars-- just be able to show the next employer what you did at the last project.

englyn

  • Bristles
  • ***
  • Posts: 422
Re: Looking for career advice from mustachian engineers
« Reply #9 on: February 04, 2013, 01:57:51 AM »
There are a lot of other jobs you could consider in tech that aren't programmer, and your existing experience and studies may be more relevant. You could use these as a stepping stone to SE or may find you want to stay.
Wordpress expert? Sharepoint expert? Tester? Tech writer? Online content editor? Network admin??

Able was I ERE

  • Stubble
  • **
  • Posts: 158
  • Location: Austria
    • FIREhub.eu
Re: Looking for career advice from mustachian engineers
« Reply #10 on: February 04, 2013, 06:02:37 AM »
And I love solving puzzles. Actually, I've been thinking I could be a good debugger.

Sounds like the qualities of a good QA / Test Engineer.  QA/testing jobs typically have lower barriers for entry (degree, experience), but will pay less than a programmer. 

At the very least you could get involved in a crowdsourcing project like WordPress (either the Codex or plugin development) or smartphone apps.  You wouldn't have to make a gazillion dollars-- just be able to show the next employer what you did at the last project.

+1 for truth.  If you decide to go into programming, having contributions to open source projects or a https://github.com/ account filled with your own code will definitely help show you know your stuff.

After you have a few contributions, I'd suggest getting an internship at a tech company.  You wouldn't be a traditional intern, so you may have to find a smaller company that's willing to work with you.  Maybe a start-up?

sherr

  • Handlebar Stache
  • *****
  • Posts: 1541
  • Age: 38
  • Location: North Carolina, USA
Re: Looking for career advice from mustachian engineers
« Reply #11 on: February 04, 2013, 07:13:46 AM »
There's a lot of good advice in this thread already, so I won't repeat it. The only thing I would add is in response to this question:

Should I be pursuing php and python, or java and c++, for example?

I would actually split the options and recommend a combination of Python (or Ruby) and java (or C++). Once you can successfully apply programming principles to both of those and have some experience under your belt you would be pretty darn employable. They are very different languages, and once you got good at both then you should be able to pick up other languages pretty easily if you needed to. C is also useful for really understanding what's really going on on the hardware, but not many places use much C unless it's for embedded systems. Personally I think Python is more fun to program in than Java, but you work with what you have to.

JanMN

  • Guest
Re: Looking for career advice from mustachian engineers
« Reply #12 on: February 04, 2013, 07:55:17 AM »
Check out the Natural Language Processing field - your linguistics degree + any programming background would be a great match for that area. 

http://en.wikipedia.org/wiki/Natural_language_processing

GuitarStv

  • Senior Mustachian
  • ********
  • Posts: 23129
  • Age: 42
  • Location: Toronto, Ontario, Canada
Re: Looking for career advice from mustachian engineers
« Reply #13 on: February 04, 2013, 08:11:02 AM »
I am a software engineer, and have worked with many people from other engineering disciplines who do basically the same job that I do.  The key is finding the first software engineering position . . . you will want to be proficient with data structures and algorithms, and have a very good working knowledge of at least one language.

All computer languages are very similar.  Once you learn to break down a problem into logical steps it's just a matter of finding the syntax and special rules needed to apply your logic to that particular problem.

jpo

  • Pencil Stache
  • ****
  • Posts: 518
  • Age: 37
  • Location: North Carolina
Re: Looking for career advice from mustachian engineers
« Reply #14 on: February 04, 2013, 09:39:05 AM »
Might be worth trying to get a QA position for a foot in the door, especially if the company automates/scripts their QA. I know guys who have gone from QA to dev. Also know devs without degrees. It's definitely possible.

desrever

  • 5 O'Clock Shadow
  • *
  • Posts: 72
Re: Looking for career advice from mustachian engineers
« Reply #15 on: February 04, 2013, 10:19:25 AM »
It is really tough to get this into the head of starting programmers, but I always try anyway: it is not about mastering any particular programming language or technology. You fixate on those nouns because they are concrete, like the name of a place you haven't been but think you could visit. The skill you really want to develop is what Jeannette Wing calls Computational Thinking: http://www.cs.cmu.edu/afs/cs/usr/wing/www/publications/Wing06.pdf It's about understanding the limits of what computers can do, how to break a problem down into steps that can be implemented as a program, solving the puzzles that come up when the actual behavior doesn't match the intended behavior. When you have that, learning a new language is pretty straightforward. A great way to develop this skill is to learn two very different languages. This often is asked of students during their sophomore year.

[ The one exception to "new languages are easy to pick up" is C/C++. If you only ever work in garbage collected languages, the jump to a non-garbage-collected language like C++ will feel like needless difficulty. Best to expose yourself to it earlier rather than later. ]

In my view, the project-oriented sophomore and junior level courses in a typical CS curriculum are an important foundation for a career in computer science. Data structures and algorithms is the gateway to courses like distributed systems, graphics, compilers, natural language processing, information retrieval. A good experience (and interest) in any one of those courses can be a springboard into a job in a related field.

Once you are in the industry, the key skills that make you better have more to do with soft people skills than raw technical ability. Raw technical ability is of course important, and will get you far, but guiding a team to collaboratively solve a problem turns out to be a scarcer skill. Interviews for experienced industry candidates tend to stress these skills more, and we're a little more forgiving if they don't remember some bit of algorithmic trivia they haven't used in a decade.

Coursera etc is great, but you really need to be self motivated to succeed at that, and it seems to me that it would be pretty easy for an autodidact to develop blind spots. Getting interviews will be harder if you lack both credentials and connections. The good news is that interviews, if you can score them, tend to be very skill focused and meritocratic.

unpolloloco

  • Stubble
  • **
  • Posts: 187
Re: Looking for career advice from mustachian engineers
« Reply #16 on: February 04, 2013, 10:44:07 AM »
Look into computational linguistics as well.

http://en.wikipedia.org/wiki/Computational_linguistics

NestEggChick (formerly PFgal)

  • Stubble
  • **
  • Posts: 238
  • Location: Boston-ish, MA
    • Nest Egg Chick
Re: Looking for career advice from mustachian engineers
« Reply #17 on: February 04, 2013, 05:50:49 PM »
Wow, you guys are amazing! I knew I'd get great info from this forum, but my head is spinning right now.

Desrever, I've gotten the impression before this that doing the work is not about the particular languages I've already learned as much as the ability to learn new languages as I go, but do you think hiring managers think that too? Since I don't have the degree or any other formal training, I'm worried about getting my foot in the door. I have no doubt that once I get hired someplace, I'll have no trouble learning and moving up from there. From what you all have said, it sounds like I should learn Java, Javascript, C++, and Python/Ruby to get a good basis. After that, it sounds like I should write apps if I want to move in that direction, or participate in open source projects if I want to move more towards software, and that's what I'd put on my resume and use to get my foot in the door someplace. Is that right?

Of course, I also need to consider other areas. QA has interested me before, and jpo and Able was I ERE mentioned that, so I'll need to look into it. Does anyone here have experience with that, or know what I'd need to learn? I can always read job ads online, but I'm looking more for real-world input right now. We all know that job ads aren't the best way to find out what a job is really like.

Thankfully, I have some of the soft skills that you guys have mentioned. I've done some project management and I generally work well with others. From what I hear, being a woman may mean I get a lower salary, but it might be helpful in getting me hired (many places want to even out their gender ratios) and at least it shouldn't make it too much harder. So it's the hard skills that seem to need the most work right now.

Thank you all for your input! This is really helping me much more than the online searches I've done so far!

spider1204

  • Stubble
  • **
  • Posts: 244
  • Location: Lexington, KY
Re: Looking for career advice from mustachian engineers
« Reply #18 on: February 04, 2013, 09:27:45 PM »
I would say that don't need to learn all of those languages, just starting by learning an object oriented language well (Java, Python, Ruby).  However, once you've figured out how to make the computer do what you want in a language then the next step is to start learning some of the best practices that will help when you're working a larger project in a team setting.

That means reusing more of your code, separating things into classes and not creating one giant main method like we all used to do when we first started learning.  There are also a whole host of things such as the DRY principle, unit testing, making your code as readable to others as possible.  Basically all the things that are going to be important no matter what languages your working with, and that are going to be more important to your success than any particular languages syntax.

Able was I ERE

  • Stubble
  • **
  • Posts: 158
  • Location: Austria
    • FIREhub.eu
Re: Looking for career advice from mustachian engineers
« Reply #19 on: February 07, 2013, 12:40:49 AM »
Of course, I also need to consider other areas. QA has interested me before, and jpo and Able was I ERE mentioned that, so I'll need to look into it. Does anyone here have experience with that, or know what I'd need to learn? I can always read job ads online, but I'm looking more for real-world input right now. We all know that job ads aren't the best way to find out what a job is really like.

The day-to-day of a Software QA/Tester will vary largely depending on the company and its culture, but usually revolves around testing, understanding requirements to ensure they're met, and investigating/reproducing user issues.  Here's one explanation from the internet: http://www.websoftwareqa.com/2010/08/what-does-qa-do/    Here's a website where many QAs hang out ( http://sqa.stackexchange.com/ ).  There was a Tester at the last Boston meet-up---PM me if you want me to put you in touch.

A local tech company that might be of interest for your linguistics side: http://www.basistech.com/

Jack

  • Magnum Stache
  • ******
  • Posts: 4725
  • Location: Atlanta, GA
Re: Looking for career advice from mustachian engineers
« Reply #20 on: February 07, 2013, 05:08:34 AM »
From what you all have said, it sounds like I should learn Java, Javascript, C++, and Python/Ruby to get a good basis.

First, I'd pick C instead of C++ OR skip Java. Second, I'd focus on Javascript OR Python OR Ruby -- they'd all look good on your resume, but they're also used for similar things. Finally, I'd add at least a short overview of Scheme (or some other Lisp derivative). You probably won't ever use Scheme or Lisp in a job (except maybe natural language processing), but it's different enough from everything else to give you a better perspective.

trammatic

  • Stubble
  • **
  • Posts: 218
  • Location: Gettysburg
Re: Looking for career advice from mustachian engineers
« Reply #21 on: February 07, 2013, 02:18:32 PM »
There's also that new educational program that MMM published today that has a curriculum and will try to place you when you've finished....

NestEggChick (formerly PFgal)

  • Stubble
  • **
  • Posts: 238
  • Location: Boston-ish, MA
    • Nest Egg Chick
Re: Looking for career advice from mustachian engineers
« Reply #22 on: February 10, 2013, 09:24:13 AM »

The day-to-day of a Software QA/Tester will vary largely depending on the company and its culture, but usually revolves around testing, understanding requirements to ensure they're met, and investigating/reproducing user issues.  Here's one explanation from the internet: http://www.websoftwareqa.com/2010/08/what-does-qa-do/   


Thanks Able, this article is really helpful!

 

Wow, a phone plan for fifteen bucks!