[Courses] [Careers] My mid-life career change to software

Anna Badimo anna at cs.wits.ac.za
Mon Feb 7 23:23:03 EST 2005


Hi Julie,

This is very encouraging. I am also at a point where I want to change to a 
network/infrastructure manager. I have been a software developer and I kind of
find it very mundane once you have learned a system or a programming language.
Where should I start?

Best Regards
Anna Badimo

--
WITS University


---------- Original Message -----------
From: Julie B <joulie at gmail.com>
To: courses at linuxchix.org
Sent: Sat, 5 Feb 2005 11:44:05 -0800
Subject: [Courses] [Careers] My mid-life career change to software

> Hi all,
> 
> This is the story of how I changed careers in mid-life to become a
> software engineer. At the end I have a list of what I think are some
> useful tips to help anyone interested in changing careers to software
> development.
> 
> Ancient History
> 
> I didn't stumble into a computing career until I reached middle age
> (mid-30's) and realized I was bored and wasn't ever using my brain at
> work. Right after high school, I'd gotten a Bachelors degree in
> Advertising (via the Marketing Department rather than art). In the
> U.S., that's a 4-year degree coming after high school. While pursuing
> that degree I was exposed to both FORTRAN (via punch cards!) and the
> old-fashioned BASIC (non-visual). I actually enjoyed them both quite 
> a lot and even went home for the summer and wrote a program on my 
> father's old Radio Shack TRS-80 (1980s) to manage some inventory for 
> him. The only problem with pursuing that as a career was that I 
> couldn't bear the idea of giving up my "cool" image to join the nerd 
> crowd in CS, so I settled for advertising because it seemed interesting.
> 
> Advertising is a tough field to break into, and the pay isn't
> impressive. Eventually I ended up doing desktop publishing and 
> graphic arts for a small management company out in the boondocks (my 
> rural little hometown in the Midwest). It was nice work, I spent my time
> creating all of the advertising for the companies they managed, but 
> it didn't really satisfy me. They noticed that I had an aptitude for 
> computers and put me in charge of their new little NT 4.0 Windows 
> network. Mostly that just involved installing software on computers, 
> fixing little problems that came up, and inserting network cards 
> into new machines.
> 
> Around that time, I decided I was really irritated with Adobe Corp.
> for putting a layers feature into Photoshop and Illustrator, but not
> into PageMaker, so I decided if they couldn't be bothered to do it,
> I'd figure it out for myself. So in an astounding act of naivety I
> went out and bought a big fat beginning Visual C++ book with the idea
> that I'd swipe layers out of one of those programs and simply patch 
> it into PageMaker. (Of course I realized that the idea was complete 
> nonsense, but I was feeling pretty displeased with them at the time 
> and it's amazing what a person will do when irritated.) As I read my 
> fancy new C++ book, I remembered how much I'd enjoyed programming 
> long ago, back when I was still maintaining my "cool" persona, so I decided
> to learn more. As I started to dig deeper I realized that it would
> take forever to do on my own with no mentors (or even anyone at all 
> in my whole county, male or female, who even had a slight interest 
> in computers), and I didn't have that much patience, so I thought about
> going back to school.
> 
> I Used to have a Life
> 
> I wrote a letter to the CS department of a mid-sized state university
> near my home and asked them to mail me information on their program.
> They promptly mailed me a brochure for the graduate program (which 
> was for a masters degree, a 2-year post-bachelor degree). I was 
> aghast! A masters program seemed unthinkable considering how little 
> I actually knew about CS. I did some research on my own and quickly 
> found out that because I already had a bachelor degree I would only 
> qualify for financial aid if I pursued a masters degree. Totally 
> discouraged, I gave up on that wild idea.
> 
> A few weeks later, out of the blue; the chairman of the CS department
> telephoned me at work to ask if I was planning to apply because the
> deadline was fast approaching. I was shocked and stricken with 
> shyness and babbled on about how I wasn't qualified to get an MS,
>  but he urged me to apply anyway because they had a special program 
> for those with a degree in other fields. If he hadn't called me and 
> hadn't been so encouraging and insistent that I should proceed 
> quickly, I probably would have permanently given up on the idea, but 
> instead I filled out an application in secret (didn't want my family 
> and friends to find out about that crazy thing I was doing). To my 
> complete and utter surprise, I was accepted!
> 
> School was difficult, but wonderful! I learned so many things that I
> wouldn't have on my own and met some very bright people. I was
> required to take most of the undergraduate CS courses before being
> allowed into any masters courses, which resolved my ignorance 
> problem, and financial aid was OK with that arrangement so long as I 
> was proceeding towards a degree. I was a little skeptical in the beginning
> and wasn't totally sure I'd actually enjoy computer science, but the
> deeper I got into it, the more I realized that this is what I love. A
> good program is like an extraordinary work of art to me.
> 
> I finished off my degree by completing a Master's thesis on the topic
> of translating compiled Pascal machine code into Java bytecode, so
> that a Pascal program could be run in a Java Virtual Machine. The 
> idea of translating random binaries into code that can run in a virtual
> machine is fascinating to me. It wouldn't have to the just be the 
> JVM, the forthcoming Perl Parrot VM could be used just as easily. If 
> you ignore the obvious legal issues surrounding it, I think everyone 
> can remember some instance where they'd like to take an old program they
> have sitting around on some obsolete machine and get it to work in a
> new machine with some different OS. I was even fortunate enough to
> have a paper based on it published for a conference (co-authored with
> that same chairman of the CS dept. - he really is a terrific person).
> 
> I finally emerged from school during the big Internet boom in early
> 2000, so finding a job wasn't very difficult and suddenly I found
> myself in Silicon Valley doing programming for a living. It was a big
> thrill to get a little box of business cards that had my name on them
> with the title "Software Engineer".
> 
> Career and the Future
> 
> I was amazingly lucky with my first job, because I had a great 
> manager in a small startup company. We were providing a caching 
> solution to help speed up Internet connections for small remote 
> offices of large corporations. We developed smart web proxy servers 
> that could understand commands from a management application and 
> upload files in advance of when they would be needed. It was really 
> interesting stuff.
> 
> My manager was a woman, one of the few in the company, and the first
> big task she assigned to me was to write a server that would speak a
> custom protocol we were designing. It was intended to be the main
> communication link between the management app. and the array of proxy
> servers. It was a very small company, so there weren't any other
> people available that she could assign it to at the time. Remember,
>  of course, that I was really green (a newbie straight out of school)
>  and so I hadn't built up much self-confidence in my skills yet. I 
> was absolutely terrified that I wouldn't be able to do that job, so 
> I went home every night and read book after book on multi-threading, 
> I/O, and anything else I thought might help. In the end I did it on schedule
> and I tested the life out of it (mostly to soothe my fears that it
> wouldn't work and would be the cause of an early end to my new
> career). My server ended up being the most stable component of our
> entire product :) and QA loved the protocol testing tool I created.
> 
> Now I'm on my second job since that company didn't survive the big
> Internet crash. Both jobs have been using Java (with a little Python)
> and I've had the opportunity to do a lot of other things. I've found
> that I have a _huge_ preference for backend over front-end. My 
> current job is primarily backend stuff so I should be happy, but I'm 
> still not completely satisfied, hence my interest in Linux.
> 
> During school my favorite classes (by a landslide) were on the topics
> of operating systems and compilers. I loved all of that nitty-gritty
> stuff, and I sorely miss it now. Java, in particular, never seems to
> give a person much of a peek into the underbelly of what's going on.
> All of the libraries have already been written by somebody else, so
> all I ever get to do is read API documents and use other people's
> interesting stuff. I want to do those things myself. I guess what it
> comes down to is that I'd rather write a JVM than just use one. Don't
> get me wrong, though, my current job is a very good and stable one 
> and I get to program, which is all I really want to do, but I do 
> worry that I'll forever be pigeonholed as a Java person and never be 
> able to get anyone to hire me to do anything else. Because of that,
>  I want to actively work on improving my other skills, building a 
> more diverse background, and meeting other developers who aren't so 
> Java-oriented. I think that Linux and open source is the best way to 
> do that.
> 
> Late this last summer I was poking around on Source Forge and some
> other sites looking for something interesting to do (and to hopefully
> get some non-Java experience) when I stumbled across a link and 
> little blurb about LinuxChix. Ah ha! A site with other technically-minded
> women. That was just what I needed. When I found out that there were
> actually chix that were hacking the kernel hanging out at that site, 
> I was completely hooked. Now my new-found hobby is teaching myself 
> to hack the kernel in my spare time, and I think I've made a lot of 
> progress in a short period of time. My co-workers are all very Java-
> centric and think I'm completely off my rocker ["off one's rocker" : 
> in a state of extreme confusion or insanity <went off her rocker,
>  and had to be put away> - definition from Merriam-Webster Online]. 
> Maybe they're right :) but for now it seems like the perfect way to 
> broaden my skillset and meet other people and it's been lots of fun, 
> too.
> 
> I was a little discouraged to find such a low volume of traffic on 
> the kernelchix mailing list and was hoping I could rally some enthusiasm
> in it so I recently sent off an email to see if anyone else would be
> interested in working together on something. There wasn't any
> response, though, except for one nice suggestion. I don't exactly 
> have a bubbly outgoing, social type of personality, though, so maybe 
> I'm just not the best person to be encouraging something like that. 
> Anyways, my plan is to keep working at it in my spare time and just 
> see where it takes me. Any suggestions are welcome, because I'm not 
> entirely sure what the best approach is. I feel really competent and 
> sure of my skills at work, but in open source I feel very new and 
> unsure of how to proceed.
> 
> Tips for Success
> 
> Here are the pointers I promised at the beginning. I think I've
> learned a few things while changing careers, so hopefully they can
> benefit someone else:
> 
> 1. If you have the opportunity to go to school, I think it's good to
> get an MS rather than a BS, and be sure to ask if they have any
> special programs you might qualify for. I noticed a huge difference 
> in my overall level of comprehension once I made the leap into the 
> graduate-level courses, and it does make a difference to a lot of 
> employers (as already discussed in previous courses).
> 
> 2. Network early. Get over your shyness and meet people; join the
> clubs in school. I didn't do that, but I should have. Only recently
> did I finally get up the courage to go to my first Linux users group
> meeting.
> 
> 3. Brownnose your professors in as far as getting to know them and
> asking them to introduce you to people they know in the industry and
> asking them for career advice. A lot of the time, they're clueless
> about what it's like out in industry, but some of them might be able
> to help or have connections with former students.
> 
> 4. Something I didn't anticipate is that development managers here in
> Silicon Valley seem to pick up a bunch of developers who follow them
> from company to company. I liken it to a mother duck who's followed
> around by her little ducklings (I'm a duckling :-). This makes it 
> hard for newbies who haven't been caught up in the trail of a 
> manager yet to get started, so you need to work on finding managers 
> and team leaders that you get along well with early on.
> 
> 5. Allow (and encourage) your manager to assign you to tasks that you
> fear might be beyond your abilities. This is good for so many 
> reasons: you'll surprise yourself by learning how to do the job AND you'll
> improve your skills much more rapidly than you would otherwise (and
> enhance your resume' more quickly) AND you'll increase your value to
> your manager AND you're less likely to get bored.
> 
> 6. If you have a choice over doing a Master's thesis or some lesser
> final project, get up your courage and do the thesis. Yes, it's hard
> to come up with a good idea and complete it; yes, it's terrifying
> defending it publicly in front of the faculty and your peers (I spent
> most of that day in the restroom), but you'll learn so much and it
> will open up doors for you. It helped my self-confidence, too.
> 
> 7. If you decide to go back to school (and still work full time to
> support yourself), be prepared - it's likely to consume ALL of your
> spare time. I gave up all hope of a social life (and a clean house)
> for 3 years. Also make sure your family and friends understand how
> important it is. While I was in school, another middle-aged woman was
> following a similar path, but when her new boyfriend started
> complaining that she was spending too much time on school and not
> enough on him, she freaked and dropped out. It was tragic because she
> was super intelligent, really loved the classes, and had great plans
> for her future. Just keep in mind that if your significant other 
> can't find a way inside him- or herself to support you in something that's
> so important to you (and live in a messy house because of it ;), then
> maybe that person isn't as terrific as you once thought. Remember 
> that it's your future, and only you can make it happen.
> 
> Final advice: changing careers is absolutely terrifying because you
> have to leave your safe place and venture out into unknown territory
> where you don't know for sure if you're capable of doing it or not,
> but I believe you can do it. We spend such a huge percentage of our
> lives at work; that time should be spent doing something we love.
> 
> Julie
> _______________________________________________
> Courses mailing list
> Courses at linuxchix.org
> http://mailman.linuxchix.org/mailman/listinfo/courses
------- End of Original Message -------



More information about the Courses mailing list