So I’m a bit late for any New Years Resolutions unfortunately, I’ve never really made those – it’s not like anyone actually goes through with them right? What I would like to do this year, is get a bit more upskilled in my profession.
A bit of History
I’ve always been an above average, competitive person. At school I was in fierce competition with my best friend and rival for the Dux award (top scholar), and missed it by 0.5%! I was top of the class at University and graduated “summa cum laude”. I went straight from University (BSc in BioMedical Science) to a 1 year software programming course, where I of course had to be top of the class again 😉
I took to programming like a duck to water, it was as obvious and straight-forward to me as breathing. Nothing like the BioMed practical work where I had to follow instructions carefully and had to study very hard to remember the work.
Anyway, from there I got a job in a great company in their software testing department, and over a few years moved into a team management role and then into their development team as a C++ (programming language) junior developer.
At the moment I’m in a C# role (A different programming language to the one above), and even though I have about 5 years development experience I still feel like a “junior developer” in terms of ability. My main problem is that I’ve always maintained big, complex systems, or added functionality to an existing system, and haven’t done my new design and greenfield work myself. I hardly did any personal projects, not having any motivation to do so. I used to be happy and felt competent in my field (8 years domain knowledge, so I had a ton of information up my sleeve), so was happy to just chug along.
With this new C# job, it’s a completely new product, new design and development, with a language that I’m competent in, but by no means very good. It makes me deeply unhappy to feel like I’m the underdog in the team, just trying to keep my head above water when they start getting into design patterns, examining my code or discussing performance strategies. I’m not the type of person to just “get the job done”, it must be “the very best job” or it will keep me up at night. Yes, I am quite a stressed person at times 🙂
Goals for 2013
So my goal for this year is to finally kick my butt into reading a few excellent books on programming, and to do some personal projects.
One project I have started planning for, is a retirement planning application that you can record your assets and investments in, input your estimated ROI, and see what future nest-egg you can save up for yourself in present-day values. It will have functionality to be able to enter your yearly savings (with an estimated yearly increase), and I also want to add features where you can see what effect a future event could have on your assets – buying a mortgage for example, or a stock market crash, or high inflation.
Books that I’d like to read this month – Code Complete by Steve McConnell, and How to Design Programs – Matthias Felleisen et al (Available for free online here).
I realised today that I spend way too much time reading blogs, forums, posting messages and just generally mucking about on the Internet. This is not time learning anything useful, just reading people’s comments. It counts as “entertainment”, like watching TV. I’d much rather be more productive with my time developing skills that will add to my paycheck, so I’ll be cutting down on these activities, maybe one hour a day maximum reading on the Internet instead of browsing the entire evening away.
Plans for the Future
So we are saving around 50% of our paycheck, and expenses include $21580 on renting a nice house. Obviously with such a high rental, we’re thinking about purchasing sometime soon – we’re just saving up a decent deposit so that we don’t need to spend a fortune on mortgage interest. We’re currently living on one of our paychecks and saving the other. We have some investments in a few different stock markets around the world, and cash savings in a money market at 3.15% after tax. [Update October – Husband has taken some time off from working to do some studying and destress from a very bad situation at his previous job. So we’re now actually living on a single paycheck, and saving about 20% right now. We’ve scaled back on expenses as much as possible!]
With the 50% savings rate, we’ll need about 12-15 years of savings before we can retire early. I don’t think we can cut back expenses any further without sinking money heavily into a property, so I’m looking at increasing my salary. As a software developer, I think I can improve a lot here, maybe get up to 20% more for now, and in a few years up to 50%. Like I said, what’s currently holding me back is only my laziness, I can easily pick up new concepts and programming languages, but I need more experience and hands-on experimentation to make more progress.
So to summarise :
- Get more bad-ass at programming, more programming on my own projects, learning new technologies and techniques, and learning from the masters.
- Get a qualification or two (Microsoft certification), and then start applying for senior development positions.
- After a year, we’re going to start looking at the housing market, hopefully by this time it will have cooled down, and not gone into crazy bubble territory. (It only had a little dip in 2009 and is starting to creep up again, but is highly unaffordable compared to median salary). This will help with the high rental expenses at the moment.
- More salary + Less expenses means we might be able to shave off a few years on TTR (Time to Retire), I’m happy to continue for a while longer, but the DH is hating work at the moment and is eyeing retirement like a bull on red cloth.