software engineering

Joined
Apr 10, 2007
Messages
313
Reaction score
7
Points
18
Hello, I am considering software engineering as a career. I am curious about what education it takes and what a person could expect to earn and how satisfying a career people who do it find it to be. I would like to get into developing apps for Mac or Linux or both.
 
Joined
Jan 20, 2007
Messages
3,269
Reaction score
270
Points
83
Location
Oakton, VA USA
Your Mac's Specs
White MacBook Intel C2D 2.2GHz, 2G, 250G, SD, Leopard.
Hello, I am considering software engineering as a career. I am curious about what education it takes and what a person could expect to earn and how satisfying a career people who do it find it to be. I would like to get into developing apps for Mac or Linux or both.
I develop s/w in a research and development environment, specifically air traffic control. I'm biased. You'd do well to study math, and learn the basics of programming. While I code in Python primarily, my first programming language is mathematics. Programming languages come and go, but math will stay with you for life.

For programming languages, Python is very good to learn. It's transferable across the major environments - Linux, the free BSD families, Unix, OS X, and Windows.

You won't go wrong getting down and dirty with a Linux distro. Custom roll your own kernel, play with a bunch of distros, get familiar with the normal Unix and Gnu tools (sed, grep, awk, for instance), and become conversant on the command line. This will help you in an overall *Nix world.

For the Mac environment, I could comment but I'll defer to others. My Mac programming experience to date is nil, having just switched in January.

How much can you make? Here's my company, one of the best 100 places to work:

http://money.cnn.com/magazines/fortune/bestcompanies/2007/snapshots/60.html

From the page, here's what someone could make writing software with some experience:

Most common job (salaried):
Lead Information Systems Engineer $112,656

Is it satisfying? Okay, my job is more than just writing code. I've run research projects. I've influenced how air traffic operates in this country. Yes, it's very satisfying.

In closing, I'll emphasize that a degree (BS) in math is a good way to go.
 
Joined
Jan 20, 2007
Messages
3,269
Reaction score
270
Points
83
Location
Oakton, VA USA
Your Mac's Specs
White MacBook Intel C2D 2.2GHz, 2G, 250G, SD, Leopard.
OP
J
Joined
Apr 10, 2007
Messages
313
Reaction score
7
Points
18
I don't think I could stomach working for Microsoft. What I am hoping to do is develope for Unix/Linux/Mac. I like the principles behind Linux and Apple. I think its a noble profession to assist in the conveyance of information. I'd do it for free if I could, but since the wife and kids think they have to eat every day I need to make a good living at it. Back when I was Linux-Only I often thought "this stuff could be really nice with a good company and a little money behind it." Then I looked at a Mac.
 
Joined
Jun 25, 2005
Messages
3,231
Reaction score
112
Points
63
Location
On the road
Your Mac's Specs
2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid
I have a pet peeve regarding the term 'software engineer'. Perhaps another time.

The minimum education is the U.S. is an associate degree I think that a company would recognize for a person having proper training in software development. You'll have to look up the exact available titles.

To make it more likely to get to the high end of the money, you may need at least a full computer science degree with perhaps a minor in math or engineering. If I was starting out, I'd look at software engineering degrees recognized by the engineering community, what ever they may be called. I'm sure the universities that have that available will make it clear.

If your intent is to be an independent Mac or Linux developer, then perhaps some intro courses in programming, including analysis and GUI design, would kick start you on that path. The thing I like about live instructor lead courses is your (hopefully) learning from someone with experience which leads to real world discussions, which leads to learning about some of the grey areas of the subject.

As for the money factor. Searching for such jobs on Monster or Dice or even Craigslist can give you a decent indicator.

The career can be satisfying. Especially if you can see that your users have gained something positive from your work. As with any job, you're likely find areas not too exciting to you. I coding and really enjoy it when particular puzzle grabs my attention. There are many different facets in the business, so there is a good chance you'll find an interest.
 
OP
J
Joined
Apr 10, 2007
Messages
313
Reaction score
7
Points
18
Hello, lets hear about your pet peeve. Also, I don't know about being an independant developer, I would rather be a contributor to a nice project.
 
Joined
Mar 30, 2004
Messages
4,744
Reaction score
381
Points
83
Location
USA
Your Mac's Specs
12" Apple PowerBook G4 (1.5GHz)
I have a pet peeve regarding the term 'software engineer'. Perhaps another time.
Please share.

you may need at least a full computer science degree with perhaps a minor in math or engineering. If I was starting out, I'd look at software engineering degrees recognized by the engineering community, what ever they may be called. I'm sure the universities that have that available will make it clear.

That's a good place to start.
 

rman


Retired Staff
Joined
Dec 24, 2002
Messages
12,637
Reaction score
168
Points
63
Location
Los Angeles, California
Your Mac's Specs
14in MacBook Pro M1 Max 32GB 2TB
Joined
Jun 25, 2005
Messages
3,231
Reaction score
112
Points
63
Location
On the road
Your Mac's Specs
2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid
Hello, lets hear about your pet peeve. Also, I don't know about being an independant developer, I would rather be a contributor to a nice project.
I'm leaving out my pet peeve because I don't need an argument right now. My week has already been disruptive. There was a small hint in my original response.

Building a career in this business pretty much demands the expense and time of formal training. If for no other reason, because employers like to know you have at least covered the formal methodologies and have a basic understanding of the underpinnings of how systems really work. There is a core of knowledge that is taught in both short term college programs and 5 year computer science degrees. With this core, a talented individual can go on to build most applications you see today. Of course it should be mentioned that a talented person without formal training can be just as productive.

I don't know what the percentages are, but most of the computer science talent is working on corporate applications. Both the people and applications are not usually known to the general public. Also note that much of that talent are also working on applications that run on a Microsoft OS, and having to use said OS during for development.

It is likely easier to get your foot in the door of that 'cool' company if your name is recognized. A common way to do that is to work on a popular open source project, or create your own applications. A few key issues here is that you should be interested in the application, show that you are reliable and work well with others, and the application should be using much of the technology that company uses.

Given what everyone has said, I hope you realize it is likely going to take you years to "be a contributor to a nice project". If you already have some the required skills, then perhaps that will get you there a little sooner.
 
OP
J
Joined
Apr 10, 2007
Messages
313
Reaction score
7
Points
18
I see what you mean, its probably tough to get somebody to look at a person without much education behind them regardless of the real world work they have done. I'm fairly passionate about open source or more to the point free an open exchange of information which computers are far and away the best means to.
 
Joined
Jun 25, 2005
Messages
3,231
Reaction score
112
Points
63
Location
On the road
Your Mac's Specs
2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid
Your interests are mostly conflicting. First you say you want a software career where payment is involved so that you can support the family. You then say your intestests are to work in the open source community. There are exceptions, but mostly, the open source community doesn't have funds for 9-5 type employment.

Do you have any background now that you could apply to a target application? The open source community is more about results than formal education. If you can contribute and they like your code, then you have a chance of becoming a formal contributing member of a team.
 
OP
J
Joined
Apr 10, 2007
Messages
313
Reaction score
7
Points
18
Its true open source typically doesn't pay but there are exceptions and companies like Ubuntu are gaining market share. I kind of hope the next tech surge will have to do with open source. Can you imagine working at Apple in about 1981? I guess to some up I hope to pick a career thats puts me in a good place when the next big thing in computing comes. The empire in Redmond is faultering, The current Ubuntu is really great, it took a big leap from the last release, Apple is strong and getting stronger, people are really responding to the Intel switch. People in this country are starting to shake the "herd mentality" that has gripped them for quite some time. Openness to new ideas paves the road for a better everthing including computing. I think its an exciting time and I want to be involved in that but I still have to feed everybody too.
 
Joined
Apr 29, 2006
Messages
4,576
Reaction score
378
Points
83
Location
St. Somewhere
Your Mac's Specs
Mac Studio, M1 Max, 32 GB RAM, 2 TB SSD
It seems obvious to me - I am not sure why no one has mentioned it to date - to work as a software engineer, you should get at minimum a Bachelors degree in software engineering! As mathogre correctly points out, a math degree is pretty good as well - a GREAT deal of overlap between the two.

The work can be VERY satisfying. It all depends on what you like. I am passionate about technology and I LOVE working with it. As a software engineer, you can work on everything from embedded real time systems (my personal fave) to huge on line transaction processing systems.

Like any job, a software engineering job has its share of annoyances, but it also has immense opportunities for fun, gratification and helping others. I would strongly recommend it.

BTW, I didn't follow my own advice - Software Engineering was just getting started in the mid 70s when I got my degrees. I have a B.Sc and an M.A.Sc both in Electrical Engineering - I did a strong focus on software through both degrees though.
 
Joined
Sep 26, 2006
Messages
70
Reaction score
2
Points
8
Location
Edmonton AB
I'm sure xstep's pet peeve is with the use of Engineer in "Software Engineer". I tend to also have a pet peeve with this. As a "Network Engineer" I often feel that the title of Engineer was handed to me too easily. Keep in mind real Engineers go to school for 8 years + to earn this title. It's almost like calling myself Dr. Soso when I didn't really obtain a doctorate.

Also, anyone can call themselves a "Software Engineer" when in fact they simply wrote some code :)
 
Joined
Mar 11, 2004
Messages
1,964
Reaction score
174
Points
63
"Also, anyone can call themselves a "Software Engineer" when in fact they simply wrote some code"

Beep.jpg
 

Shop Amazon


Shop for your Apple, Mac, iPhone and other computer products on Amazon.
We are a participant in the Amazon Services LLC Associates Program, an affiliate program designed to provide a means for us to earn fees by linking to Amazon and affiliated sites.
Top