Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

CS spotlight July08.ppt


Published on

  • Be the first to comment

  • Be the first to like this

CS spotlight July08.ppt

  1. 1. What is Computer Science? <ul><li>The study of the foundations of computing, data storage, and information processing </li></ul><ul><li>Computer Scientists develop applications that allow computers to solve real-world problems </li></ul><ul><li>Computer Science spans diverse areas: </li></ul><ul><ul><li>Security and cryptography </li></ul></ul><ul><ul><li>Robotics and computer vision </li></ul></ul><ul><ul><li>Data mining and databases </li></ul></ul><ul><ul><li>Distributed and mobile systems </li></ul></ul><ul><ul><li>Intelligent systems and gaming </li></ul></ul><ul><ul><li>Computational biology </li></ul></ul><ul><ul><li>Computer networks </li></ul></ul><ul><ul><li>Computer graphics and animation </li></ul></ul><ul><ul><li>More… </li></ul></ul>
  2. 2. How is CS different? <ul><li>Computer Scientists develop applications for computer systems </li></ul><ul><li>Computer scientists obtain a comprehensive foundation that permits them to adapt to as well as create new technologies, new paradigms and new ideas. </li></ul><ul><li>Foundation consists of: </li></ul><ul><ul><li>Mathematics and problem solving </li></ul></ul><ul><ul><li>Modeling and programming </li></ul></ul><ul><ul><li>Computer systems </li></ul></ul><ul><li>Computer Scientists have flexible employment opportunities </li></ul>
  3. 3. What Computer Scientists do? <ul><li>Employed in top programming jobs </li></ul><ul><li>Invent new applications for computer systems </li></ul><ul><ul><li>World Wide Web </li></ul></ul><ul><ul><li>Google search engine </li></ul></ul><ul><ul><li>Peer-to-Peer networks </li></ul></ul><ul><ul><li>Wireless systems </li></ul></ul><ul><li>Develop better ways to solve computing problems </li></ul><ul><ul><li>More secure ways to encrypt information </li></ul></ul><ul><ul><li>More efficient ways to send audio/video over the Internet </li></ul></ul>
  4. 4. What is Software Engineering? <ul><li>Many Computer Scientists work in the software development industry. </li></ul><ul><li>Software is often developed by large developer teams that require all developers to use common approaches/rules/practices to software development </li></ul><ul><li>Software engineering is a field that studies and defines the best approaches/rules/practices for software development and maintenance </li></ul>
  5. 5. A Sample of CS areas <ul><li>Distributed systems development </li></ul><ul><li>Computer game development </li></ul><ul><li>Database administration </li></ul><ul><li>Search engine technologies </li></ul><ul><li>Computer security (Prof.Furst) </li></ul><ul><li>Computer game development (Prof.Linhoff) </li></ul><ul><li>Computer graphics (J. Schnepp, PhD candidate) </li></ul>
  6. 6. Distributed System development <ul><li>A distributed system is software system that uses multiple independent computers communicating over a network to accomplish a common task. </li></ul><ul><li>Examples: </li></ul><ul><ul><li>Email </li></ul></ul><ul><ul><li>Napster and SETI@home </li></ul></ul><ul><ul><li>World Wide Web </li></ul></ul><ul><ul><li>Online games </li></ul></ul><ul><ul><li>Grids </li></ul></ul>
  7. 7. A sample job listing (excerpts) <ul><li>Applications Developer - Computer Professional </li></ul><ul><li>Department: Computing Division, Fermilab . </li></ul><ul><li>Must have software analysis, development, testing and debugging skills. </li></ul><ul><li>Excellence in distributed software development and integration using some or all of C++, Java, and Python is needed. </li></ul><ul><li>Experience with database systems … </li></ul><ul><li>Proven ability in oral and written communication is essential. </li></ul><ul><li>Demonstrated ability for analysis and resolution of problems in distributed and/or networked systems. </li></ul>
  8. 8. Computer Game development <ul><li>Game software development requires an understanding of: </li></ul><ul><ul><li>Mathematics </li></ul></ul><ul><ul><li>Computer graphics </li></ul></ul><ul><ul><li>Computer architecture </li></ul></ul><ul><ul><li>Operating systems </li></ul></ul><ul><ul><li>Network programming </li></ul></ul><ul><ul><li>Parallel processing </li></ul></ul>
  9. 9. A sample job listing (excerpts) <ul><li>Online Programmer </li></ul><ul><li>Midway Games Inc, Chicago, IL </li></ul><ul><li>Responsibilities: </li></ul><ul><ul><li>Design, define and develop the next generation of online gameplay and networking technology for multiple platforms. </li></ul></ul><ul><li>Requirements: </li></ul><ul><ul><li>Extensive knowledge of C++ programming . </li></ul></ul><ul><ul><li>Strong multithreaded/parallel programming … would be beneficial. </li></ul></ul><ul><ul><li>Effective analytical, written, oral , team, interpersonal, planning and organizing skills are essential. </li></ul></ul><ul><li>Education: </li></ul><ul><ul><li>Bachelors degree or higher in Computer Science is preferred. </li></ul></ul>
  10. 10. Database administration <ul><li>Databases are used to store and organize data in ways to make insertion, search and retrieval of information efficient </li></ul><ul><li>Databases are used in the following industries </li></ul><ul><ul><li>Financial industry </li></ul></ul><ul><ul><li>Search engines </li></ul></ul><ul><ul><li>Travel industry </li></ul></ul>
  11. 11. A sample job listing (excerpts) <ul><li>Title: Database Administrator, Chicago Mercantile Exchange </li></ul><ul><li>Responsible for the administration of Oracle 10g RAC, Grid and ASM running on Sun Unix or Linux operating systems. </li></ul><ul><li>Must be able to implement databases on Unix and Linux platforms . </li></ul><ul><li>Requirements: </li></ul><ul><ul><li>In depth knowledge in the works of Oracle 10g, RAC, ASM and Grid, TOAD, DB2 and SQL Server a plus </li></ul></ul><ul><ul><li>Experience in a very high transaction rate OLTP applications required </li></ul></ul><ul><ul><li>Working knowledge of Linux and Unix operating systems are required. NT and MVS is a plus. </li></ul></ul>
  12. 12. Search Engine Technologies <ul><li>A Search Engine is a computer program that is used to find information stored in a software system such as the World Wide Web </li></ul><ul><li>How does a search engine return web pages that are relevant to the query? </li></ul><ul><li>Technologies include: databases, distributed systems, artificial intelligence, networking etc. </li></ul>
  13. 13. A sample job listing (excerpts) <ul><li>Openings in Software Engineering, Google </li></ul><ul><li>We need world-class engineers to join our engineering team in developing our next-generation search engine (…) </li></ul><ul><li>Working on problems in (…) cutting-edge information retrieval algorithms , scalability issues related to dealing with huge amounts of data…, and a variety of novel search features . </li></ul><ul><li>Requirements: </li></ul><ul><ul><li>Enthusiasm for solving interesting problems . </li></ul></ul><ul><ul><li>Experience with Unix/Linux or Windows environments, C++ development, distributed systems, machine learning, information retrieval, network programming… </li></ul></ul>
  14. 14. The Bachelor of Science in Computer Science <ul><li>Mathematical tools </li></ul><ul><li>Problem solving, algorithms, and structured programming </li></ul><ul><li>Modelling and object oriented programming </li></ul><ul><li>Computer Systems </li></ul><ul><li>Communication skills </li></ul><ul><li>Senior Capstone </li></ul>
  15. 15. Advanced Coursework <ul><li>Theory </li></ul><ul><li>Data storage </li></ul><ul><li>Computer Systems </li></ul><ul><li>Data analysis and mining </li></ul><ul><li>Artificial intelligence </li></ul><ul><li>Computer vision </li></ul><ul><li>Human computer interaction </li></ul><ul><li>Computer gaming </li></ul><ul><li>Software engineering </li></ul><ul><li>Computer graphics and animation </li></ul><ul><li>Computational Sciences </li></ul><ul><li>Network programming </li></ul><ul><li>and more to come… </li></ul>
  16. 16. Sample CS topics covered at CTI <ul><li>How does Google work and why is it such a good search engine? </li></ul><ul><li>How does a computer beat the World Chess Champion? </li></ul><ul><li>How does information get routed on the Internet? </li></ul><ul><li>How does encryption work and how can encrypted messages be broken? </li></ul><ul><li>How do the Mars robots see and process the landscape around them? </li></ul>
  17. 17. Sample CS topics covered at CTI <ul><li>How does one protect a system against an attack? </li></ul><ul><li>How are players synchronized in an online computer game? </li></ul><ul><li>What techniques are being developed to increase the speed of microprocessors? </li></ul><ul><li>What makes a Graphical User Interface user-friendly? </li></ul><ul><li>What problems are Computer Scientists currently solving in the field of Computational Biology? </li></ul>
  18. 18. Software Engineering Concentration <ul><li>This concentration integrates: </li></ul><ul><ul><li>the foundational Computer Science material with </li></ul></ul><ul><ul><li>engineering practices developed for building and maintaining software applications. </li></ul></ul><ul><li>Six additional SE courses. </li></ul>
  19. 19. Current Career Outcomes Average starting salary of a 2007 DePaul CS graduate: $55,313
  20. 20. Employment projections (BLS) Table 2: Fastest-growing occupations, 2006-16           (Numbers in thousands) 2006 National Employment Matrix code and title Employment Change Quartile rank by 2006 median annual wages 1 Most significant source of postsecondary education or training 2 2006 2016 Percent Number 1 Network systems and data communications analysts 262 402 53.4 140 VH Bachelor's degree 2 Personal and home care aides 767 1,156 50.6 389 VL Short-term on-the-job training 3 Home health aides 787 1,171 48.7 384 VL Short-term on-the-job training 4 Computer software engineers, applications 507 733 44.6 226 VH Bachelor's degree 5 Veterinary technologists and technicians 71 100 41.0 29 L Associate degree 6 Personal financial advisors 176 248 41.0 72 VH Bachelor's degree … … 23 Marriage and family therapists 25 32 29.8 7 H Master's degree 24 Dental assistants 280 362 29.2 82 L Moderate-term on-the-job training 25 Computer systems analysts 504 650 29.0 146 VH Bachelor's degree 26 Database administrators 119 154 28.6 34 VH Bachelor's degree 27 Computer software engineers, systems software 350 449 28.2 99 VH Bachelor's degree
  21. 21. An opportunity … for the few The number of students entering the CS field is at historical lows = More opportunities when you graduate
  22. 22. Shortages of CS professionals “ Today, there simply aren’t enough people with the right skills to fill the growing demand for computer scientists and engineers. This is a critical problem …” (Bill Gates, 02/19/2008)
  23. 23. So, why choose CS? Source: Money Magazine, April 12, 2006 Average pay Job growth Career $66,216 22.78% Real estate appraiser 8 $83,427 36.10% Computer/IT analyst 7 $82,317 20.19% Market research analyst 6 $75,117 49.65% Physician assistant 5 $73,731 23.47% HR manager 4 $122,462 25.92% Financial advisor 3 $81,491 31.39% College professor 2 $80,427 46.07% Software engineer 1
  24. 24. And why choose CS atDePaul? <ul><li>Because our students are successful! </li></ul><ul><li>Ranking of the top 12 US teams at the 2006 World Programming Contest: </li></ul>Wisconsin, Mad. 7 Washington, St.L. 4 Rice 7 Maryland, Coll.P. 4 Virginia Tech 7 Caltech 4 Georgia Tech 7 DePaul 3 Carnegie Mellon 7 Princeton 2 Duke 7 MIT 1 Team Rank Team Rank