New To Mac-Forums?

Welcome to our community! Join the discussion today by registering your FREE account. If you have any problems with the registration process, please contact us!

Get your questions answered by community gurus Advice and insight from world-class Apple enthusiasts Exclusive access to members-only contests, giveaways and deals

Join today!

 
Start a Discussion
 

Mac-Forums Brief

Subscribe to Mac-Forums Brief to receive special offers from Mac-Forums partners and sponsors

Join the conversation RSS
OS X - Development and Darwin Discussion and questions about development for Mac OS X.

software engineering


Post Reply New Thread Subscribe

 
Thread Tools
jakeroberts

 
Member Since: Apr 10, 2007
Posts: 313
jakeroberts will become famous soon enough

jakeroberts is offline
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.
QUOTE Thanks
mathogre

 
mathogre's Avatar
 
Member Since: Jan 20, 2007
Location: Oakton, VA USA
Posts: 3,269
mathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant future
Mac Specs: White MacBook Intel C2D 2.2GHz, 2G, 250G, SD, Leopard.

mathogre is offline
Quote:
Originally Posted by jakeroberts View Post
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/fortu...pshots/60.html

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

Quote:
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.

Evil Math Ogre Kgh-Ra
Integrate me. Differentiate me.
You can't hurt me. I'm e^x. Ha ha ha!

Homepage | Gallery
I was on the M-F honor roll for July 2007.
QUOTE Thanks
mathogre

 
mathogre's Avatar
 
Member Since: Jan 20, 2007
Location: Oakton, VA USA
Posts: 3,269
mathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant futuremathogre has a brilliant future
Mac Specs: White MacBook Intel C2D 2.2GHz, 2G, 250G, SD, Leopard.

mathogre is offline
Here's some additional info, the best 100 list:

http://money.cnn.com/magazines/fortu...007/full_list/

Google had over 1,000,000 people apply to work for them last year.

Microsoft pay?

Quote:
Most common job (salaried):
Software Developer $118,500
Again that's probably for someone with experience, but that's good money.

Hope this helps!

Evil Math Ogre Kgh-Ra
Integrate me. Differentiate me.
You can't hurt me. I'm e^x. Ha ha ha!

Homepage | Gallery
I was on the M-F honor roll for July 2007.
QUOTE Thanks
jakeroberts

 
Member Since: Apr 10, 2007
Posts: 313
jakeroberts will become famous soon enough

jakeroberts is offline
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.
QUOTE Thanks
xstep

 
xstep's Avatar
 
Member Since: Jun 25, 2005
Location: On the road
Posts: 3,231
xstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to all
Mac Specs: 2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid

xstep is offline
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.
QUOTE Thanks
jakeroberts

 
Member Since: Apr 10, 2007
Posts: 313
jakeroberts will become famous soon enough

jakeroberts is offline
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.
QUOTE Thanks
technologist

 
Member Since: Mar 30, 2004
Location: USA
Posts: 4,744
technologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond reputetechnologist has a reputation beyond repute
Mac Specs: 12" Apple PowerBook G4 (1.5GHz)

technologist is offline
Quote:
Originally Posted by xstep View Post
I have a pet peeve regarding the term 'software engineer'. Perhaps another time.
Please share.

Quote:
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.
QUOTE Thanks
rman

 
rman's Avatar
 
Member Since: Dec 24, 2002
Location: Los Angeles, California
Posts: 12,591
rman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud ofrman has much to be proud of
Mac Specs: 2 x 3.0GHz Quad-Core, 6GB OS X 10.6.8 | 15in MacBook Pro 2.2GHz OS X 10.6.8 | 64GB iPad 2 WiFi

rman is offline
www.payscale.com will give you salary ranges.

Life isn't about waiting for the storm to pass, It's about learning to dance in the rain!
QUOTE Thanks
xstep

 
xstep's Avatar
 
Member Since: Jun 25, 2005
Location: On the road
Posts: 3,231
xstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to all
Mac Specs: 2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid

xstep is offline
Quote:
Originally Posted by jakeroberts View Post
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.
QUOTE Thanks
jakeroberts

 
Member Since: Apr 10, 2007
Posts: 313
jakeroberts will become famous soon enough

jakeroberts is offline
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.
QUOTE Thanks
xstep

 
xstep's Avatar
 
Member Since: Jun 25, 2005
Location: On the road
Posts: 3,231
xstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to allxstep is a name known to all
Mac Specs: 2011 MBP, i7, 16GB RAM, MBP 2.16Ghz Core Duo, 2GB ram, Dual 867Mhz MDD, 1.75GB ram, ATI 9800 Pro vid

xstep is offline
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.
QUOTE Thanks
jakeroberts

 
Member Since: Apr 10, 2007
Posts: 313
jakeroberts will become famous soon enough

jakeroberts is offline
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.
QUOTE Thanks
mac57

 
mac57's Avatar
 
Member Since: Apr 29, 2006
Location: St. Somewhere
Posts: 4,560
mac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant futuremac57 has a brilliant future
Mac Specs: iMac 27" 3.4 GHz, 256 GB SSD, 2 TB HDD, 8 GB RAM

mac57 is offline
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.

My Macs: iMac 27" 3.4 GHz, Mac Pro 3.2 GHz, PowerMac G5 Quad 2.5 GHz, G4 Cube with 1.2 GHz Upgrade
My iStuff: 64GB iPhone 5, 64GB iPad4, 30GB iPod Video, 16GB iPod Touch
My OS': Mac OS X Lion, Mac OS X Snow Leopard, Mac OS X Tiger, Mac OS 9.2.2, openSUSE 10.3
I was on the Mac-Forums honor roll for September 2007
QUOTE Thanks
slashd0t

 
Member Since: Sep 26, 2006
Location: Edmonton AB
Posts: 70
slashd0t is an unknown at this point

slashd0t is offline
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
QUOTE Thanks
Brown Study

 
Brown Study's Avatar
 
Member Since: Mar 11, 2004
Location: Winnipeg
Posts: 1,964
Brown Study is a name known to allBrown Study is a name known to allBrown Study is a name known to allBrown Study is a name known to allBrown Study is a name known to allBrown Study is a name known to allBrown Study is a name known to all
Mac Specs: G4 Tiger and OS 9

Brown Study is offline
"Also, anyone can call themselves a "Software Engineer" when in fact they simply wrote some code"
Attached Images
File Type: jpg Beep.jpg (14.7 KB, 11 views)
QUOTE Thanks

Post Reply New Thread Subscribe


« Start OpenOffice from java | Terminal Help »
Thread Tools

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off
Forum Jump

Similar Threads
Thread
Thread Starter
Forum
Replies
Last Post
April Software Giveaway! schweb News and Community Announcements 16 05-03-2005 12:45 PM
1st Major Switch - Software Required cynapz Switcher Hangout 4 02-20-2004 12:20 PM

All times are GMT -4. The time now is 04:17 AM.

Powered by vBulletin
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
X

Welcome to Mac-Forums.com

Create your username to jump into the discussion!

New members like you have made this community the ultimate source for your Mac since 2003!


(4 digit year)

Already a member?