Advice needed: Looking for a career move into software development

Tassidar

Expert Member
Joined
May 22, 2006
Messages
1,427
Reaction score
0
Location
Leeds, UK
Hi all,

For the last 10 years, I have been in the business training environment and I am looking to change careers into software development (I'm 32).

At current I have one year of a computer science degree and a BCom, with maths 1, applied maths 1 and statistics 2.

At current, I am teaching myself how to programme in C++. My rationale for this somewhat archaic language is that it is fairly low level and will teach me the basics of programming, once I am competent with C++, I plan to teach myself javascript.

From those in the industry, could you please provide me with the following advice:
  1. What language(s) are important to be able to program in?
  2. How important is it for me to complete my comp sci degree?
  3. How much in demand are software developers in South Africa?
  4. Anything else that you might think of.

Many thanks in advance,
Tassidar
 
Last edited:
Some additional info:

My plan is to use the rest of this year to get competent. I'm pretty serious about this, so I intend to spend between two to four hours a day programming.

By February / March 2013, I hope to have some kind of portfolio together, which will allow me to demonstrate my skills.

As I become competent, I will also look to contribute to opensource projects, probably either LibreOffice or Ubuntu (since I use both on a daily basis).

Since I have also helped develop an online course, I may put additional effort into developing learning tools using javascript.
 
You should go back and finish that degree, it carries a lot of clout if its from a big university! Getting my comp sci wwas the best thing i did.

1) finishing a comp sci will make you a good programmer regardless of language, it just becomes syntax and the working of the compiler/internal data structures that you need to learn to be proficient.
2) If you want a really good job, definitely something i would recommend.
3) They are still very much in demand, very hard to find good developers and near impossible to find someone who can use data structures and design a good algorithm and not just the direct brute force approach to problems.

Languages: Java is still very widely used in a lot of sectors, Python is picking up and I really like the quickness of Ruby.
 
You should go back and finish that degree, it carries a lot of clout if its from a big university! Getting my comp sci wwas the best thing i did.

1) finishing a comp sci will make you a good programmer regardless of language, it just becomes syntax and the working of the compiler/internal data structures that you need to learn to be proficient.
2) If you want a really good job, definitely something i would recommend.
3) They are still very much in demand, very hard to find good developers and near impossible to find someone who can use data structures and design a good algorithm and not just the direct brute force approach to problems.

Languages: Java is still very widely used in a lot of sectors, Python is picking up and I really like the quickness of Ruby.

Thanks, Phiber. Much appreciated.

By necessity, I will finish my degree through UNISA starting hopefully with Comp Sci 2 next year. I don't think it will be too difficult. At my current rate of study, I reckon I will be able to complete the equivalent of a year's study in about 2-3 months, so by the time I register, I should be pretty comfortable with the material. In the mean time, I hope to be able to demonstrate my skills by putting together a good portfolio of work, and being able to show a number of contributions to open source development.

As I understand C++ and java are very similar so switching from one to the other should be pretty easy.
 
1) finishing a comp sci will make you a good programmer regardless of language, it just becomes syntax and the working of the compiler/internal data structures that you need to learn to be proficient.

Say whaaat?! I know a LOT of people with Comp Sci degrees who can't program 'n VCR, let alone applications. They know the theory and logic, but that is not what it's about.

For me, experience beats a degree by a looooooooooooong way. You see, anyone can write a piece of code if they spend the time trying to learn programming. What everyone can not do however, is build something that makes business and commercial sense. And that is where experience comes in. I opted not to go study, as I've taught myself a whole bunch of languages by matric, and I think the headstart was well worth it.

I do however, think that no education is wasted, so I would most definitely finish that degree if I were you, but don't wait till you've finished it before diving in!

To answer your other questions:
1) There is a very high demand for developers on the Microsoft stack, and it's really easy to pickup C# and .net, once you know C++. I'd also throw in some php, javascript and general web dev. Also SQL, lots and lots of SQL, but in conjunction with your programming.

3) Good developers are impossible to find, so if you can manage to get good at it this year you won't struggle to find work.

4) Be prepared to start off on a lowish salary, but work hard for the first while and you'll see it start to skyrocket.
 
?..

As I understand C++ and java are very similar so switching from one to the other should be pretty easy.

Not really. They are quite different. It maybe easier to move from C++ to java, but not the other way around. Java is way easier than C++.

Java is an interpreted language and it's runtime does a lot of the work for you.
 
Not really. They are quite different. It maybe easier to move from C++ to java, but not the other way around. Java is way easier than C++.

Java is an interpreted language and it's runtime does a lot of the work for you.

Very true, thus the idea of starting with C++ is a good one I think, generally it just gets easier from there :p
 
Say whaaat?! I know a LOT of people with Comp Sci degrees who can't program 'n VCR, let alone applications. They know the theory and logic, but that is not what it's about.

For me, experience beats a degree by a looooooooooooong way. You see, anyone can write a piece of code if they spend the time trying to learn programming. What everyone can not do however, is build something that makes business and commercial sense. And that is where experience comes in. I opted not to go study, as I've taught myself a whole bunch of languages by matric, and I think the headstart was well worth it.

I do however, think that no education is wasted, so I would most definitely finish that degree if I were you, but don't wait till you've finished it before diving in!

To answer your other questions:
1) There is a very high demand for developers on the Microsoft stack, and it's really easy to pickup C# and .net, once you know C++. I'd also throw in some php, javascript and general web dev. Also SQL, lots and lots of SQL, but in conjunction with your programming.

3) Good developers are impossible to find, so if you can manage to get good at it this year you won't struggle to find work.

4) Be prepared to start off on a lowish salary, but work hard for the first while and you'll see it start to skyrocket.

Thanks Frikkenator,

Once again, much your help is much appreciated.

I will definitely aim to get a BSc Comp Sci. The fact that I withdrew from my CompSci degree earlier is a bugbear enough to make me complete it, before even considering the benefits. That having been said, I can't wait two to three years. I believe that I am intelligent and motivated enough to be a really good programmer - so I'm not afraid of diving in - I just need to build some demonstrable evidence.

To your point (4): I know two people who started on a low salary but have doubled their salary in 10 months - Once I start, I will be prepared to work exceptionally hard, rest assured.

I'll have to get my head around programming MS stuff (not a big fan of MS), but that shouldn't be a problem. I'll start reading up on SQL once I'm proficient with javascript.

A friend of mine reckons that in a couple of years most programmers will be programming in javascript? What is your opinion of this?
 
Say whaaat?! I know a LOT of people with Comp Sci degrees who can't program 'n VCR, let alone applications. They know the theory and logic, but that is not what it's about.

For me, experience beats a degree by a looooooooooooong way. You see, anyone can write a piece of code if they spend the time trying to learn programming. What everyone can not do however, is build something that makes business and commercial sense. And that is where experience comes in. I opted not to go study, as I've taught myself a whole bunch of languages by matric, and I think the headstart was well worth it.

I do however, think that no education is wasted, so I would most definitely finish that degree if I were you, but don't wait till you've finished it before diving in!

To answer your other questions:
1) There is a very high demand for developers on the Microsoft stack, and it's really easy to pickup C# and .net, once you know C++. I'd also throw in some php, javascript and general web dev. Also SQL, lots and lots of SQL, but in conjunction with your programming.

3) Good developers are impossible to find, so if you can manage to get good at it this year you won't struggle to find work.

4) Be prepared to start off on a lowish salary, but work hard for the first while and you'll see it start to skyrocket.

These days it's much harder to get an interview for people who don't have a lot of experience. I would say if you have less than 2 years experience, it's damn near impossible to make a short list. I pity the person who loses his/her job and they have less than 2 years experience and no degree. While there may be a high demand for developers, the demand is for developers with experience, not for relative newbies.
 
Not really. They are quite different. It maybe easier to move from C++ to java, but not the other way around. Java is way easier than C++.

Java is an interpreted language and it's runtime does a lot of the work for you.

Thanks for the advice, Zippy.

The reason that I am starting with C++ is that I reckon that C++ will give me a good basis for programming. Rather like those who grew up with DOS have a greater knowledge of computers, even if they never resort back to the command prompt.
 
Thanks, Phiber. Much appreciated.

By necessity, I will finish my degree through UNISA starting hopefully with Comp Sci 2 next year. I don't think it will be too difficult. At my current rate of study, I reckon I will be able to complete the equivalent of a year's study in about 2-3 months, so by the time I register, I should be pretty comfortable with the material. In the mean time, I hope to be able to demonstrate my skills by putting together a good portfolio of work, and being able to show a number of contributions to open source development.

As I understand C++ and java are very similar so switching from one to the other should be pretty easy.

if I understand you correctly, are you saying that you wish to fasttrack your degree? ie do it in less than 3 years? if this is the case, I dont think you can actually do that, I think eduction "law" says that a degree must take 3 years minimum
 
Thanks Frikkenator,

Once again, much your help is much appreciated.

I will definitely aim to get a BSc Comp Sci. The fact that I withdrew from my CompSci degree earlier is a bugbear enough to make me complete it, before even considering the benefits. That having been said, I can't wait two to three years. I believe that I am intelligent and motivated enough to be a really good programmer - so I'm not afraid of diving in - I just need to build some demonstrable evidence.

To your point (4): I know two people who started on a low salary but have doubled their salary in 10 months - Once I start, I will be prepared to work exceptionally hard, rest assured.

I'll have to get my head around programming MS stuff (not a big fan of MS), but that shouldn't be a problem. I'll start reading up on SQL once I'm proficient with javascript.

A friend of mine reckons that in a couple of years most programmers will be programming in javascript? What is your opinion of this?

In the UK financial services sector, enterprise java pays loads, especially in a bank or brokerage firm. A lot of organisations have a mix. Where I work, we use Oracle forms application server(PL/SQL therefore being the main skill here) , C++, Pro C on a Unix OS and also a mix of java and C# on windows server for customer Internet access. Our main database platform is Oracle, but we also have SQL Server for various services. We have JavaScript lurking in some places, but it's not the main skillset. Most of our developers can work on at least 2 languages. The Oracle peeps generally know C++. They also have to know Unix shell scripting as a lot our Oracle db stuff is called Unix cron. The web team knows java and C# and other MS stuff.
 
To your point (4): I know two people who started on a low salary but have doubled their salary in 10 months - Once I start, I will be prepared to work exceptionally hard, rest assured.

Yea, I started off quite low as well and was earning 6 times as much a year and a half later. Hard work, but it pays off.

I'll have to get my head around programming MS stuff (not a big fan of MS), but that shouldn't be a problem. I'll start reading up on SQL once I'm proficient with javascript.

Me neither, but their dev tools are second to none!

A friend of mine reckons that in a couple of years most programmers will be programming in javascript? What is your opinion of this?

Not a chance, firstly, javascript is a scripting language, and secondly it is built for a specific purpose, and it's very good at it. But you can't write client-server web apps only using javascript. JS will give you a rich front-end, but that's where it stops, to build a proper web app you'll have to get your hands dirty with some php/ASP.NET.

There will never be a one size fits all language, the trick is to know which one is best for a given situation.
 
Thanks for the advice, Zippy.

The reason that I am starting with C++ is that I reckon that C++ will give me a good basis for programming. Rather like those who grew up with DOS have a greater knowledge of computers, even if they never resort back to the command prompt.

There was a time when C/C++ was the language ALL developers started with. It's a tough language to start with. But only because there are now easier ones:)

Personally, I would have started with C# if I where starting now, but if you want to start with C++, that's fine. Just don't give up. It can take months before it really makes sense. One day it will suddenly "click". Until, then things like pointers will drive you batty and you will want blow something up and will cry like a baby for weeks, and curse your parents for not force feeding you brain food. You will then realise why companies pay the big bucks.
 
There was a time when C/C++ was the language ALL developers started with. It's a tough language to start with. But only because there are now easier ones:)

Personally, I would have started with C# if I where starting now, but if you want to start with C++, that's fine. Just don't give up. It can take months before it really makes sense. One day it will suddenly "click". Until, then things like pointers will drive you batty and you will want blow something up and will cry like a baby for weeks, and curse your parents for not force feeding you brain food. You will then realise why companies pay the big bucks.

Blegh... pointers :cry:

I read a quote somewhere years ago: "C++ gives you enough rope to do anything, including hanging yourself"

It is well worth the effort though!
 
  1. What language(s) are important to be able to program in?
  2. How important is it for me to complete my comp sci degree?
  3. How much in demand are software developers in South Africa?
  4. Anything else that you might think of.

1. .NET or Java... But I would go for .NET if I had to choose between the two. There is a lot of C# work out there. The future for smaller (read "not enterprise") applications on Windows lies with HTML5, JavaScript and .NET all running on top of WinRT.
2. It may help but to get your foot in the door (especially at your age)
3. There is a shortage, especially for experienced intermediate and senior developers.
 
if I understand you correctly, are you saying that you wish to fasttrack your degree? ie do it in less than 3 years? if this is the case, I dont think you can actually do that, I think eduction "law" says that a degree must take 3 years minimum

Simply put, I already have a degree, so the degree to my name is less important than the three years of comp sci, but I can aim for the full BSc in due course.
 
In the UK financial services sector, enterprise java pays loads, especially in a bank or brokerage firm. A lot of organisations have a mix. Where I work, we use Oracle forms application server(PL/SQL therefore being the main skill here) , C++, Pro C on a Unix OS and also a mix of java and C# on windows server for customer Internet access. Our main database platform is Oracle, but we also have SQL Server for various services. We have JavaScript lurking in some places, but it's not the main skillset. Most of our developers can work on at least 2 languages. The Oracle peeps generally know C++. They also have to know Unix shell scripting as a lot our Oracle db stuff is called Unix cron. The web team knows java and C# and other MS stuff.

Thanks, Zippy, interesting to know.

I hope my knowledge of Linux will come in useful, though I in due course, I will need to brush up on scripting.
 
Top
Sign up to the MyBroadband newsletter
X