Diploma Services People
Certification Contact Us


Computer Careers

The careers or job opportunities in computer field can be classified in to the following groups:
  • Software Programming
  • Hardware Programming (VLSI)
  • Administration
  • Testing or Quality Assurance (QA)

Software Programming

We can classify the programmers or programming jobs based on various parameters. Following are some parameters:
  • Programming Language Used
  • Operating System Used
  • Abstraction Layer Used

Based on the programming language, we classify programmers, as Assembly programmers, C programmers, C++ programmers, Java programmers, C# programmers etc..

Based on the OS we classify as Linux/Unix Programmers, Windows Programmers, Mac Programmers etc..

We develop programs on some abstraction layer that is by using the services provided by the underlying abstraction layer. The lowest layer is hardware abstraction. Developing programs directly to run on top of hardware comes under this layer. Next layer is OS abstraction layer. In this layer, we develop programs by using OS services. While programming at OS abstraction layer, we do not care about hardware. Final layers are application abstraction layers. These application abstraction layers run on top of OS abstraction layer, and provide various application abstractions like Graphical User Interface (GUI), Web application environment, Database application environment etc.. While developing programs on top of application abstractions, we do not care about underlying OS.

DEPIK's expertise lies in System Programming that includes the following skills:
  • C and Assembly Languages
  • Linux/Unix Operating System
  • Hardware Abstraction Layer and OS abstraction layer

Hardware Programming (VLSI)

Hardware programming is required to design and develop a new hardware chips. The hardware logic of a chip is specified by using a hardware language such a Verilog and VHDL. So one should learn these languages and associated tools. Students also should be good at Digital Electronics to learn these hardware languages.

Administration

Administration is about managing and maintaining the Hardware, Operating System, Network and Applications. In small organizations a single administrator called System Administrator will do all the above works. However large organizations will have separate administrators for each of the above works. So the following are various administration careers possible:
  • OS administration (Unix/Linux/Solaris/HP-US/Windows)
  • Network Administration (LAN/WAN)
  • Application Administration (Database/WEB/SAP)

Testing or Quality Assurance

Test Engineers are QA Engineers are responsible for testing and assuring the quality of the application programs developed by programmers. Depending on the type of applications these engineers are testing, we can classify these careers as below:
  • GUI Application Testing
  • Web Application Testing
  • Network Protocol Testing
  • Telecom Protocol Testing

The protocol testing requires very good knowledge of the protocols. These test engineers should be as good as or even better than the developers of the protocols. In order to test the protocols, the tester may need to develop some applications. Typically scripting languages such as Perl, Python, TCL are used to write test applications. The scripting languages are also useful to automate the testing process (Test Automation) as well as for System and Network administration. Knowledge of C language is going to be very helpful in learning these languages.

Another type of testing possible is called unit testing or API testing. When programmers (developers) develop some generic functions, these generic functions should tested to validate that these functions are working as expected or not. For this purpose, the testers should know the programming language used to call those API functions.


401, Sai Sushma Homes, 23/A, S.R. Nagar Main Road, Hyderabad-500038, India.
Ph: +91-40-23812090, 7702028989