Category Archives: Programming

Six Steps to a Career in Computer Science

52Computer science is not for everyone. If you like math and solving puzzles, then you will probably enjoy computer programming. Give it a try and see if it’s right for you. However, if you find puzzles to be tedious and frustrating then you should probably consider another line of work. Debugging computer programs can take hours of focused work with little reward until the end. Some people find this sort of work stressful.

If you think you have what it takes, here are six steps to launch your career in computer science and maintain a high salary:

Study math in high school. Computer programs rely heavily on algebra, with variables, functions, etc. Try to take the highest math classes your high school offers. Computer programmers sometimes employ trigonometry, calculus, and linear algebra depending upon the application. Take any computer classes offered as well.

Take computer science in college. While some folks can get a programming job with a high school diploma or associate’s degree, most employers require a four-year bachelor’s degree. Each university is different but the major is usually called “computer science”, “software engineering” or “computer engineering”. If they offer more than one that’s even better! Find out which department has the best reputation for producing skilled computer programmers.

Learn a programming language used in the industry. Some universities only teach “toy” languages because they are well suited for teaching computer science theory. If this is the only thing on your resume, employers will not be impressed. Decide what type of work you’d like to pursue (web development, desktop applications, etc.) and find out which are the most commonly used languages in that industry.

Complete a warm up project. There’s an old catch-22 about needing experience to get a job, and needing a job to get experience. A good way to gain programming experience is to volunteer on an open source project. Just choose a project that interests you. You can either start a new project on your own or contribute to an existing project on SourceForge. Prospective employers will be impressed by your initiative and you can even show them excerpts of your code as a sample.

Navigate your career path. Recent college graduates generally start in an entry-level position. With a good attitude and work ethic, you can move up the ladder to senior engineer in about five years. This may mean moving between companies. It’s common for employees to change jobs every year or two in high tech industries. Sometimes that’s the fastest way to get ahead and find a job you really enjoy.

Stay up to date. The technology of computers is always evolving rapidly. Make sure to continuously learn new developments in the industry. This will ensure a long and prosperous career. However, beware of short-term fads and don’t waste your time and effort to learn about them.

Computer Programming Explained

51Computer programming is the process of designing and writing computer programs. That is pretty straightforward, isn’t it?

At its most basic, you can think of programming as giving instructions to a computer to do something you want it to do – which might sound very similar to how you operate your desktop computer. Simplistically, the only difference between what you are doing now as a computer user and what you might do as a computer programmer is that the instructions are saved somewhere so they can be used over and over. As a matter of fact, if you have used macros in a software program like a word processor or spreadsheet (or countless other applications that are macro enabled) you have done computer programming of a sort.

Programs can be as simple as a set of instructions stored in a text file for doing some mundane task, like making backups of all the computer files in a folder, or as complex as something like a word processor, or the operating system that your computer uses which can require millions of lines of code. We need to understand that computers, which are generally just pieces of metal, plastic, silicon, and other materials stuck together in a way that allows them to do some amazing things that seem like thinking, can’t actually think at all. But what they can do extremely well is follow instructions. So what are these instructions, anyway? At the level that a computer understands, these have to be very precise, very detailed, and very complete step-by-step directions, and they must be in a form that the processor and other parts of the computer can understand – and that is as little electrical pulses which humans aren’t capable of emitting (at least not at this time).

In a way, you can think of a computer program like a recipe: a set of instructions that can be followed to produce a result. In the case of a recipe, the instructions are used by a human and can therefore be a bit descriptive, leaving out some of the details. For example, if a recipe instruction is to “pour the mixture into a blender and whip until frothy”, it is assuming that the human knows what a blender is, and where it is, and how to set it up, and how to use it – and also what pour means, and what frothy means, and so on. The human chef is expected to fill in the gaps. A computer can’t do this – it has no idea what anything means, except for a few very simple instructions. So the way we do this is to give the human a way to write instructions that can then be translated into something the computer can understand. The “way to write instructions” is called a programming language.

What a programming language allows us to do is to write instructions for the computer in a more or less human readable form that can then be translated into something the computer can work with. The human readable instructions are typically called (you guessed it) – code! Each line of human readable code translates into thousands of detailed computer instructions. A special program (or set of programs) is used to do this translation – each computer language has its own translators, which are called compilers or interpreters. Once the translation is done the result is stored in some form such as a file or set of files (or in computer memory in some cases), and each time the software is run, the computer will follow the instructions and (hopefully) the program will do whatever it is that it is supposed to be doing.

Although it is often imagined that you have to be a genius to be able to write useful software, almost anyone who is computer savvy and has an interest in becoming a power user can learn to program. Most software is written by average people with specialized knowledge and skills. Mastering computer programming can be a lifelong pursuit, but gathering enough knowledge and skill to be able to do useful things isn’t out of reach for anyone who knows how to use a computer and is willing to dedicate a little time… or maybe a lot of time, but still – it isn’t out of reach.

How To Get a Job As a Computer Programmer

Businessman in his office

“Doing your preliminary research” is the first of the six steps you need to take to get a job as a computer programmer. I will not name the other five steps here because they have already been listed in my Ezine article “Computer Programming: How To Get a Job As a Computer Programmer – An Overview.”

So what does preliminary research mean in the context we are currently exploring?

The closest analogy can be obtained by replacing the word “preliminary” with “market” to get “market research.” So why didn’t I just call it market research? One of the reasons I didn’t do this is because of the way the mind works.

We like to fit ideas into neat little boxes; so generally speaking once this has been done, we tend to switch off in the belief that we fully understand what has been put into that box. Preliminary research is a specific kind of market research which I would like us to explore with an open mind and fresh eyes.

Computer Programming is a vast field and one of the reasons why this is so is because of the variety of individuals who are engaged in its practice. Unlike fields like law and architecture there is not much regulation here because we are dealing with a field which is younger and less well established.

The first computer science degree program (of which computer programming is an aspect) is said to have started in 1953 at Cambridge University. Yet about 90 years earlier we have one of the first formal programs for the study of architecture being launched at the Massachusetts Institute of Technology in the U.S.A.

So how does knowing all this help with finding a job as a computer programmer? We need to approach the task of finding a job with the clear awareness that we are dealing with a young and still fast growing field which is forever changing. Let us now translate this into more practical terms.

Those looking for a job as a computer programmer can be broadly divided into three categories. The first category will know little or nothing about computer programming but will be curious about it and might probably be in contact with somebody who practices it on a day-to-day basis.

If you are in the second category you will probably be at an intermediate stage whereby you have read a few books and maybe even been on a programming course. You will be able to write computer programs in a standard programming language. But you won’t have worked in a professional capacity.

Finally if you are in the third category then you are a bona fide computer programmer who has worked professionally and successfully for at least a year and probably much longer.

Now for each of these three categories the approach taken to do your preliminary research will differ if you are to succeed. Let’s look at each category in turn.

Preliminary research for the beginner

If you are just starting out then you have quite an advantage as you are reading this article. You might be wondering which aspect of computer programming to pursue. Maybe you can’t decide what computer programming language to study. You’re reading this because you want to work as a professional. So before expending copious amounts of time, energy and money studying various courses, let’s take the time to find out what is really happening out there in the professional computer programming space. As a beginner the following steps are recommended.

1. Go onto a recruitment website like Jobserve (Google this if you haven’t been to this site before). Put in search criteria such as “computer programming” and pick a location. London is a good choice because you will get a lot of diversity and hence get a good sense of what is out there.

2. As you study each job description make a note of keywords which you don’t understand. Open up a suitable editor and cut and paste any details which catch your eye into this document. Or you might prefer to manually take notes. Do whatever’s comfortable.

3. Now if you are using the Jobserve website type in “computer programming” into the job criteria field and hit the search button. Never mind about the results at this stage. You should now find a band of salary ranges from below 15,000 per annum to over 100,000 per annum located on the left hand side. Please note that this option will only appear after doing the first search.

By clicking on the Go button on the left hand side you will be able to search either by salary per annum or rate per hour. Start with the highest salary per annum visible by deselecting everything except the top two bands. Last time I looked the two top bands were 75,000 to 100,000 and above 100,000. Now push the Go button and explore what programming skills are currently required to earn this sort of income.

4. You have either been cutting and pasting details into a text editor or you have been making copious notes. Whichever way you have been recording you now need to get down to the detail of researching each of the key phrases you have come across. For example you might pick the following three key phrases “object oriented design and analysis”, “Multi-threaded programming”, and “java developer.”

Google each of these items in turn and find out what they mean. By the way I picked these key phrases at random off a job which has been advertised at the rate of 400 a day. I chose to go by rate per hour because this is the option for freelance computer programmers but I’m not going to go into detail about that here.

5. As you keep up this exercise for each job in turn you might find that you want to talk to somebody to gain a bit more information. If you know anybody in the field then carry your research to the next level. But you can see here that you will be armed with more intelligent questions which may elicit more useful information than if you had approached them cold. Also because you have focused on the highest paying jobs you are now focused on those skills which can maximize your earning potential.

As you interview experienced practitioners either in person or via online chat forums take time to also explore their general qualifications. For example did they need a university degree to get started?

6. The final stage of your preliminary research will be to get the training required to enable you to perform as a computer programmer. This will lead naturally to the second phase of getting a job as a computer programmer – general preparation.

General Preparation for the beginner

Hence for the beginner, General Preparation (which is the second stage in the job securing process) will mainly comprises extensive training of the right kind while learning the right skills. The vital key words here are “right kind” and “right skills.”

What we often find here is that due to poor or non-existent preliminary research the potential candidate ends up getting training of the wrong kind while learning the wrong skills.

Preliminary Research for those at the Intermediate level

In “How To Get a Job As a Computer Programmer – Doing Your Preliminary Research Part Two” we will explore the preliminary research required for the individual who is at the intermediate level of expertise.

Acquiring Online Computer Programming Degree

49A company is considered to be efficient and convenient if they use computer in their departments. This is because it’s the demand of today that the people coming out of the universities having Bachelors degree in Computer Science are the programmers and industries demand such professionals.

This course is now most popular in many areas and demand of programmers is increasing day by day. You can get the programming education from programming schools and also can get it through online education available as offered by many universities or just the institutions.

Jobs is not a problem for a computer programmer because there is a variety of jobs available for them and if they won’t get any job there are variety of specialization courses available for them like Computer Specialist, Data base administrator, Software developer and many others.

If you get your bachelor’s degree from any institution and have a budget available for getting post doctorate or doctorate education, you can get it through online web. But during this phase you should considered to be yourself in comparison to the others.

There are many advantages of acquiring online Computer programming degree. As like other universities one won’t need to travel to his university for getting it. Wherever he is sitting he can get it right away.

This facility is only available to the students who have internet at their home so that he can access the online programs and his teacher online teaches him and provide him with the projects.

Just take care of illegal institutions that are offering such programs but they are not recognized institutions. This can effect your education because if you want to get on campus education after online education or companies offered you the jobs they would refer to the aggregated universities students.

Many online applications in the field of computer science are available right now and acquiring computer knowledge is just a click away. Thanks for the online study Programs.

Planning For a Career in Computer Programming?

48The IT sector in the country has provided jobs to a larger amount of people. The technological advancement has increases the career opportunities around the world. There is always a great demand for programmers throughout the world. The skill and subject knowledge of the individual matters a lot when it comes to a career in Computer programming. When analyzing the present market trend the demand for computer programmers is increasing each day. There are Associates online Degrees, online Bachelors and Masters degree and even online PhD Degree.

In the year 1950 FORTRAN language was developed and then came COBOL which was the first language used for commercial application. In the year 1996 for teaching the undergraduates BASIC was introduced. C was developed by Dennis Ritchie of Bell Laboratories. The most widespread computer languages are C++ and JAVA. With a lot of these computer languages and the need of other application development tools the demand for programmers has increased. Presently there are also some active tools for developing applications like Visual Studios, Eclipse and ERP. You can also have a great career in graphics if you are interested. Therefore you can either have a career in software as a software engineer or as a graphics cad or cam designer.

If you are interested in computer programming you can easily build up a career in banks, research organizations, hospitals, schools etc. It is not necessary that you need to work in a software company if you are a programmer. The government will also offer jobs for computer graduates and post graduates. There are a variety of fields inevitable with computers nowadays. The computer languages that are presently in demand are Microsoft.Net, Asp.Net, VB.Net, C# and J2EE. As the technology advanced the programmers need to update their knowledge in the field.