Computer Science is the study of computers and computational systems. Unlike electrical and computer engineers, computer scientists deal mostly with software and software systems; this includes their theory, design, development, and application.
Principal areas of study within Computer Science include artificial intelligence, computer systems and networks, security, database systems, human computer interaction, vision and graphics, numerical analysis, programming languages, software engineering, bioinformatics and theory of computing.
Although knowing how to program is essential to the study of computer science, it is only one element of the field. Computer scientists design and analyze algorithms to solve programs and study the performance of computer hardware and software. The problems that computer scientists encounter range from the abstract-- determining what problems can be solved with computers and the complexity of the algorithms that solve them – to the tangible – designing applications that perform well on handheld devices, that are easy to use, and that uphold security measures.
Find a postgraduate research project in your area of interest by exploring the research projects that we offer in the Department of Computer Science. We have a broad range of research projects for which we are seeking doctoral students. Browse the list of projects on this page or follow the links below to find information on doctoral training opportunities, or applying for a postgraduate research programme.
Alternatively, if you would like to propose your own project then please include a research project proposal and the name of a possible supervisor with your application.
1. A Multi-Tenancy FPGA Cloud Infrastructure and Runtime System
2. A New Generation of Terahertz Emitters: Exploiting Electron Spin
3. Arousal and Scanpath Trend Analysis (a-STA)
4. Balancing security and privacy with data usefulness and efficiency in wireless sensor networks
5. Blockchain-based Local Energy Markets
6. Cloud Computing Security
7. Design and Exploration of a Memristor-enabled FPGA Architecture
8. Design and Implementation of an FPGA-Accelerated Data Analytics Database
9. Digital Multimedia and Human Memory
10. Evaluating Systems for the Augmentation of Human Cognition
11. Guaranteeing Reliability for IoT Edge Computing Systems
12. Job and Task Scheduling and Resource Allocation on Parallel/Distributed machines
13. Managing the data deluge for Big Data, Internet-of-Things, Industry 4.0 environments
14. Pervasive Technology for Multimodal Human Memory Augmentation
15. Power Management Methodologies for IoT Edge Devices
16. Power Transfer Methods for Inductively Coupled 3-D ICs
17. Programmable Mixed-Signal Fabric for Machine Learning Applications
18. Scheduling, Resource Management and Decision Making for Cloud / Fog / Edge Computing
19. Security and privacy in p2p electricity trading
20. Smart Security for Smart Services in an IoT Context
21. Spin waves dynamics for spintronic computational devices
22. Spintronics-based Neuromorphic Computing for Deep Learning
23. Web Users with Cognitive Disabilities: Interaction Differences and Coping Strategies
24. Human centred computing projects
25. "A la carte": multimodal development of tailored dashboards
26. Arousal and Scanpath Trend Analysis (a-STA)
27. Automatic Activity Analysis, Detection and Recognition
28. Automatic Emotion Detection, Analysis and Recognition
29. Digital Multimedia and Human Memory
30. Evaluating Systems for the Augmentation of Human Cognition
31. Machine Learning and Cognitive Modelling Applied to Video Games
32. Pervasive Technology for Multimodal Human Memory Augmentation
33. Smart Security for Smart Services in an IoT Context
34. Social Human-Robot interaction using visual object recognition and hand pose estimation
35. Type 1 Diabetes: Accurate Prediction of Glucose Absorption from Food
36. Web Users with Cognitive Disabilities: Interaction Differences and Coping Strategies
37. Artificial intelligence projects
38. Abstractive multi-document summarisation for systematic reviews synthesis
39. Automatic Activity Analysis, Detection and Recognition
40. Automatic Emotion Detection, Analysis and Recognition
41. Automatic Music Generation via Deep Learning
42. Balancing security and privacy with data usefulness and efficiency in wireless sensor networks
43. Biologically-Plausible Continual Learning
44. Building Machine Learning Models Using Matrix Factorisation
45. Contextualised Multimedia Information Retrieval via Representation Learning
46. Data Integration & Exploration on Data Lakes
47. Deep Learning for Temporal Information Processing
48. Design and Implementation of an FPGA-Accelerated Data Analytics Database
49. Distant learning for information extraction
50. Early Stage Researcher (PhD student) in Mobile Application and AI for Language Learning (H2020 eLADDA; Collaboration between Sponge and the University of Manchester)
51. Ensemble Strategies for Semi-Supervised, Unsupervised and Transfer Learning
52. Human-Robot Collaboration for Flexible Manufacturing (iCAse PhD with BAE Systems)
53. In between structure and texture: Strexture
54. Information Component Analysis via Deep Learning
55. Job and Task Scheduling and Resource Allocation on Parallel/Distributed machines
56. Machine Learning and Cognitive Modelling Applied to Video Games
57. Machine Learning for Vision and Language Understanding
58. Multi-task Learning and Applications
59. Noise-robust Natural Language Processing
60. Problems in large graphs (e.g., social networks, VANETs)
61. Programmable Mixed-Signal Fabric for Machine Learning Applications
62. Smart Security for Smart Services in an IoT Context
63. Social Human-Robot interaction using visual object recognition and hand pose estimation
64. Spintronics-based Neuromorphic Computing for Deep Learning
65. Text Analytics and Blog/Forum Analysis
66. Zero-Shot Learning and Applications
67. Software and e-infrastructure projects
68. Automatic Detection and Repair of Software Vulnerabilities in Unmanned Aerial Vehicles
69. Combining Concolic Testing with Machine Learning to Find Software Vulnerabilities in the Internet of Things
70. Component-based Software Development.
71. Design and Exploration of a Memristor-enabled FPGA Architecture
72. Exploiting Software Vulnerabilities at Large Scale
73. Finding Vulnerabilities in IoT Software using Fuzzing, Symbolic Execution and Abstract Interpretation
74. Job and Task Scheduling and Resource Allocation on Parallel/Distributed machines
75. Managing the data deluge for Big Data, Internet-of-Things, Industry 4.0 environments
76. Scheduling, Resource Management and Decision Making for Cloud / Fog / Edge Computing
77. Security and privacy in p2p electricity trading
78. Type 1 Diabetes: Accurate Prediction of Glucose Absorption from Food
79. Using Program Synthesis for Program Repair in IoT Security
80. Verifying Cyber-attacks in CUDA Deep Neural Networks for Self-Driving Cars
81. Theory and foundations projects
82. A Multi-Tenancy FPGA Cloud Infrastructure and Runtime System
83. Automatic Detection and Repair of Software Vulnerabilities in Unmanned Aerial Vehicles
84. Blockchain-based Local Energy Markets
85. Categorical proof theory
86. Combining Concolic Testing with Machine Learning to Find Software Vulnerabilities in the Internet of Things
87. Exploiting Software Vulnerabilities at Large Scale
88. Finding Vulnerabilities in IoT Software using Fuzzing, Symbolic Execution and Abstract Interpretation
89. Formal Methods: Hybrid Event-B and Rodin
90. Formal Methods: Mechanically Checking the Semantics of Hybrid Event-B
91. Formal Semantics of the Perfect Language
92. Formally Verifying eBPF
93. In between structure and texture: Strexture
94. Mathematical models for concurrent systems
95. Minimum Description Length: An information-theoretic approach to the groupwise study of image information
96. Problems in large graphs (e.g., social networks, VANETs)
97. Security and privacy in p2p electricity trading
98. Trustworthy Certificates for Automated Theorem Provers
99. Understanding the 'Wiring' of the Brain
100. Using Program Synthesis for Program Repair in IoT Security
101. Verification of Efficient Algorithms in Isabelle/HOL
102. Verifying Cyber-attacks in CUDA Deep Neural Networks for Self-Driving Cars
103. James Elson projects
104. Automatic Activity Analysis, Detection and Recognition
105. Spintronics-based Neuromorphic Computing for Deep Learning
106. Data science projects
107. Automatic Activity Analysis, Detection and Recognition
108. Automatic Emotion Detection, Analysis and Recognition
109. Automatic Music Generation via Deep Learning
110. Biologically-Plausible Continual Learning
111. Blockchain-based Local Energy Markets
112. Building Machine Learning Models Using Matrix Factorisation
113. Contextualised Multimedia Information Retrieval via Representation Learning
114. Data Integration & Exploration on Data Lakes
115. Data Wrangling
116. Deep Learning for Temporal Information Processing
117. Design and Implementation of an FPGA-Accelerated Data Analytics Database
118. Ensemble Strategies for Semi-Supervised, Unsupervised and Transfer Learning
119. Fishing in the Data Lake
120. In between structure and texture: Strexture
121. Information Component Analysis via Deep Learning
122. Machine Learning and Cognitive Modelling Applied to Video Games
123. Managing the data deluge for Big Data, Internet-of-Things, Industry 4.0 environments
124. Minimum Description Length: An information-theoretic approach to the groupwise study of image information
125. Multi-task Learning and Applications
126. Problems in large graphs (e.g., social networks, VANETs)
127. Scheduling, Resource Management and Decision Making for Cloud / Fog / Edge Computing
128. Security and privacy in p2p electricity trading
129. Social Human-Robot interaction using visual object recognition and hand pose estimation
130. Specifying and Optimising Data Wrangling Tasks
131. Text Analytics and Blog/Forum Analysis
132. Type 1 Diabetes: Accurate Prediction of Glucose Absorption from Food
133. Unlocking Open Data through Wrapper Generation
134. Web Users with Cognitive Disabilities: Interaction Differences and Coping Strategies
135. Zero-Shot Learning and Applications
Booming IT sector in India has plenty of jobs for fresh computer science graduates. Candidates from top notch engineering colleges however get attractive job offers from MNC IT companies in comparison to not so known engineering colleges. Additionally, candidates with high percentage of mark and good communication skills as well as sound computer knowledge do not face problem in getting a job whether they are from a reputed engineering college or not. Computer engineers can get jobs in non-IT companies like universities, research, private and public industries, government departments, business organisations, commercial organisations and the manufacturing sector, etc.
Besides the Computer Engineers have plenty of options to work in IT companies in departments such as design, development, assembly, manufacture and maintenance, etc. Working as programmer, web developer, and E- commerce specialist with telecommunications companies, automotive companies, aerospace companies, etc. can be a lucrative career option as well. Moreover, numerous national and multi-national computer manufacturing companies, computer hardware system design and development companies, computer networking companies, software development companies, etc. require computer professionals in large numbers.
• Software Developers: Software developers are professionals who are concerned with facets of the software development process which involves activities such as design and coding, computer programming, project management, etc.
• Hardware Engineers: These professionals do research, design, develop, test, and oversee the installation of computer hardware which inter alia includes computer chips, circuit boards, systems, modems, keyboards, and printers.
• System Designer: Professionals involved in system designing, Logical & Physical Designing wherein logical designing can be enumerated as the structure & characteristics such as output, input, files, database & procedures, etc.
• System Analyst: Computer engineers who work as systems analyst do research about the existing problems and plan solutions for the problem. They also recommend software and system related problems and coordinate development between business development teams.
• Networking Engineers: Networking engineers are computer professionals involved in designing, implementation, and troubleshooting of computer networks.
• DBA: DBA or Database Administrator are the professionals who are bestowed with the job to design, implement, maintain, and repair an organization's database. Inter alia DBA professionals are also known as Database Coordinator or Database Programmer in IT sector.
A number of engineering colleges in India offer BTech/BE in computer science and many of them are internationally acclaimed. Most of the engineering colleges are in public sector, which include IITs and NITs.
• Indian Institute of Technology IIT Kanpur
• Indian Institute of Technology IIT Kharagpur
• Indian Institute of Technology IIT Bombay
• Indian Institute of Technology IIT Madras
• Indian Institute of Technology IIT Delhi
• BIT, Mesra
• NIT- National Institute of Technology Trichy
• Delhi College of Engineering , Delhi
• BITS Pilani
• IIT Roorkee
• IT-BHU
• IIT-Guwahati
• College of Engg , Anna University, Guindy
• Jadavpur University , Faculty of Engg & Tech., Calcutta
• Indian School of Mines, Dhanbad
• NIT- National Institute of Technology Warangal
Career in IT is considered one of the most high-paying jobs and is full of opportunities; particularly when India’s prowess in information technology industry is recognized across the globe. The pool of talented computer engineers working in IT companies of the USA and Canada shows that IT can take a person to higher levels. Numerous IT companies from India employ huge number of computer professionals in their Indian and overseas offices.
A BTech or BCA/MCA can become an IT engineer. And a person requires +2 with mathematics to pursue BTech or BCA. Others without mathematics too can do various short term certification and diploma courses in various small packages. However, there is a stringent selection procedure at place for computer engineers wherein admission to the BE/ BTech courses is extremely competitive. An internship program at Various IT companies would garner practical knowledge and employability and it is a must and can be either after or during the course.
Candidates willing to excel in computer engineering should have sound command over mathematics and science to clear entrance exam conducted soon after 12th class. Advanced knowledge of chemistry and physics would help the candidates get through the entrance exam conducted by engineering colleges in India. Candidates who wish to do BE / BTech in Computer Engineering must have passed 10+2 or equivalent examination, with Physics, Chemistry and Mathematics. Similarly, those who wish to do Diploma in Computer Engineering must have passed 10 + 2 with Science Subjects. Candidates may opt for M.E/ M. Tech in Computer Science for further specialization in Computer Science.
Depending upon the interest the career in IT can be chosen. Those who love programming and coding can do software engineering and those who prefer networking and system administration, can do hardware engineering. IT sector is quite broad in terms of employment and job options. Roles are varieties for Computer engineers in IT sector, but their primary role is to apply the knowledge of mathematics and science to design and develop software to be used by clients or users. There are network engineers, system management professionals besides the computer engineers. Computer software engineers have bright career prospects as the application of software and dependency on it in various walks of life are increasing.
Studying Information Technology can cost a lot in private engineering colleges. However, government sponsored engineering colleges charge comparatively low. IITs charge from Rs 2,00,000 to Rs 2,70,000, but the fee depends upon the rank of engineering college and reputation. Diploma programs on the other hand cost less and a diploma in computer application can be done at 50,000.
A number of scholarships are available for computer science students. One such scholarship is the Paul Foundation Scholarships and is offered to study BTech and MTech in computer science. Candidates with outstanding academic records are eligible for it. The NTPC Scholarship for Disabled or Handicapped Engineering Students is also there for students who have some kind of handicap including of visual, hearing or orthopedic.
Students willing to do research in computer science can apply for the Young Engineering Fellowship Program which is offered to students of BTech who are willing to do summer projects conducted by the Indian Institute of Science in Bangalore. Students in third year of any type of engineering degree are applicable for it.
It is the attraction of higher salaries in IT sector which urges youngsters to opt for a course in computer science. In comparison to other sector, computer science graduates fetch higher salaries from INR 15,000 – 25,000 in the beginning. After gaining +2 years of work experience, they can get a salary of INR 40000. Candidates who get opportunities to work in overseas project get numerous benefits and incentives which may even go to six figures. However, the salary depends a lot upon some factors such as the state of the industry, work experience, qualifications and ability of the candidate, etc. amongst others. Computer Science graduates who are in teaching can fetch a salary of INR 20000 plus dearness allowances and other benefits.
True to its global reputation, the Indian IT sector has lots of scope in terms of growth in employment opportunities. A huge requirement of trained IT engineers is expected in next couple of years. While according to NASSCOM, the Indian IT exports are expected to expand to the tune of US$ 175 billion by 2020 and the domestic sector will account for US$ 50 billion in terms of earnings. Similarly, a huge quantum of profit is expected from the export and domestic IT sector which would be worth US$ 225 billion.
Widening scope for computer science professionals can be prophesied from the fact that after the recession is over, new jobs would come in large numbers in IT sector. Moreover, with low service cost Indian IT companies have leverage over IT companies in the USA, Canada, and Australia. The low cost Indian IT service attract lot more business even during recession as companies in developed nations try to reduce their production cost and outsource their IT work to Indian IT firms.
IT sector can truly be considered a global career in terms of its wide scope for professionals. India has been one of the leading exporters of IT talent and Indian computer engineers have played major role in the growth and development of IT sector in the USA, UK, Australia, and Canada. Numbers of employment opportunities are waiting for Indian computer professionals in these countries. Some new avenues too are being opened for Indian computer professionals in Dubai, Singapore, Bangkok, etc. Thanks to global demand for IT services, which is around USD $70 trillion for many new and exciting international careers are opened up for computer professionals.
Despite the fact that recent recession showed the worse days for computer engineers, a great hope still persists for Indian computer science professionals for the reason that India has potential to offer IT services at the fraction of the cost of the USA software developing companies. India has advantage in terms of IT professionals as it produces more in numbers than Western countries; therefore, the demand can be filled only with Indian professionals who are par excellence vis-a-vis computer professionals of the West. Indian IT companies such as Wipro, Infosys, TCS, Patni, HCL, etc. have been able to garner gains even during the recession and have hired a number of computer professionals.
• Yahoo
• Hewlett-Packard
• International Business Machines Corporation
• Toshiba Corporation
• Dell Inc
• NEC Corporation
• Canon Inc
• Apple Inc
• ASUSTEK Computer Inc
• Acer Inc
• Lenovo Group Limited
• SAIC
• Sun Microsystem
• TCS
• Infosys
• HCL
• Wipro
• Techmahindra
Like all other engineering professions, Computer Engineering too requires practical knowledge to be employable. There is no short-cut for computer professionals, whatever one knows needs to be put into practice and loopholes would come out only when exposed to projects and other practices. Therefore, candidates who are willing to make a career in IT industry should have maximum exposure to practical knowledge so that they can perform efficiently. Most of the top IT colleges impart practical knowledge and offer internship programs which enlarge the chances of getting hired. Additionally, candidates from not so known colleges should do add-on certification courses offered by Microsoft, Oracle, Redhat, etc. so that they have higher chances of getting hired.