Date: Monday , November 17, 2008
NETWORKS VERSUS SOFTWARE
I am working in the medical transcription field as a system administrator in the Windows NT 4.0 environment, taking care of 100 computers and maintaining the FTP as well as routing and tracking the daily workflow. I have a full three years of experience in computer hardware and networking in Win NT, but I don't have any knowledge of software. I am in my final year at Madras University, working toward a bachelor's degree in computer application. I feel software is needed all over the world and I am eager to change my career from hardware/networking to software. What software is good and what should I do for the future?
- Raj Kumar
I disagree with your assessment of the job market. There is a large market for people with knowledge of hardware networking. Companies buy computers, printers, servers and software, and they need networking specialists to make sure all the hardware works smoothly together.
You need to leverage your existing skills and build on them. Look into getting certification as a networking professional. Both Microsoft and Cisco have standardized programs that allow you to get certification in different aspects of networking. I feel this is your best career path. Look also at software opportunities within networking. Most IT departments have to install new software, resolve client-server software issues, make sure all users have up-to-date versions of licensed software and install only approved software. These are software issues faced by networks, so you would be involved with software while using your networking knowledge.
If you really want to go for software, there are many career paths available. To work on e-commerce, get training in Java, Visual Basic/C++, Oracle and HTML. As I often mention in my column, there is no one magic “software” course. Software design is a discipline like any other and usually requires several years of fulltime study. If you are serious about making a career move into software design, research the different possible career paths, decide on what you want to do, and then select appropriate training courses. Once you know the type of software design you want to do, look at job descriptions to see which skills you'll need to acquire. WHICH OPTION TO TAKE?
I have completed my BE in electronics, and my masters in communication at IIT. My subjects included communication, computer networks, advanced operating system design, data structure, microprocessors, and electronic devices. I have hands-on experience with ATM networks, TCP/IP suites, optical networking, and three to four years of experience in coding (C, C++), design, and maintenance. I am employed with an optical company, involved in a QA job. The product is ADM, ATM and IP forwarding engine with OC-12 and OC-3 UPSR. I am in a dilemma and don't know which way I should go. I have a few options, including staying in the same job and understanding the system better, going back to coding, or taking a managerial position or technical leadership by changing jobs. artik
You certainly have lots of options with your qualifications. Before I offer you advice I think you need to ask yourself a few questions: What job do you want to do the most? Where do you want to be in three, five or 10 years time and how do you plan to get there? What type of work do you enjoy doing?
Without the answers to these questions, any advice I offer is meaningless. You may be able to do two, three or four jobs for the company you work for now. The best software designers are often those who have been involved in testing. I don't see why you couldn't code for the very product you are testing. Similarly, you could discuss with your manager the possibility of assuming more responsibilities and initially doing a technical leadership role such as team leader, on your way to a managerial position.
It takes a certain personality to do QA. Some people enjoy it, others don't like it. I sense that since you are considering a career change, you are not that enthusiastic about it.
Coding is a very creative process that provides fulfillment as you watch your creation grow and perform its intended function. I think this is probably what you should be doing now, based on your background.
Technical leadership happens when you have gained a lot of experience along the way and are in a position to take a high-level view and design the overall architecture, act as a consultant to peers and as a mentor to junior-level people. If you go back into coding, I would expect that you would eventually end up in a technical leadership position.
Managerial positions require that you deal with people. It is one thing to do coding, and another to manage people who code. As a manager, each of your people will have different personalities, different quirks, different things that motivate them, etc. You will have to deal with these as well as technical and business aspects of the job. Again, it takes a certain personality to effectively manage people and to manage the business aspects. Some people love it, others don't.
My advice would be to go back to coding and begin working toward a technical leadership role. In that role, become a team leader and see if you enjoy managing people. This will help you decide whether or not you want to go into a managerial position. If you enjoy the people aspect, then start working on your MBA to develop your business acumen so that you can move into management role.
Shiv Naimpally has worked as a software designer and technical recruiter in high-tech. He is currently a marketing manager at Nortel Networks in Richardson, Texas. Contact firstname.lastname@example.org