Close

Intro to CS - Speaking at DHA Suffa University

Giving back to the community is one of the key tenets of my personal and professional life. The technology industry has a long history of giving back to their communities by mentoring, helping people in need with innovations, volunteering, and providing thought leadership to help new comers. That is why when professor Twaha Ahmed Minai from DHA Suffa University asked myself and Arafat Tehsin, fellow MVP, to come and speak with the computer science sophomore class, we quickly agreed to the opportunity.

In this day and age, the possibilities for computer science graduates are virtually endless. Depending on their interest, these graduates can either be computer programmers, network administrators, hardware engineers, software developers, IT systems managers, web developers, database administrator, IT architects, systems analyst, information security experts, video game developers, data scientists, cyber security analysts, web and mobile developers - or a combination of these skills. Cross industry collaboration with healthcare and bio-informatics is also very common and makes for an excellent and rewarding career.

During our talk, we advised the following.

  1. CS is a broad discipline - try to get a robust understanding of computer science fundamentals, algorithmic thinking, problem solving and programming.
  2. Understand the fundamentals and grasp the concepts like programming paradigms including functional, procedural and object oriented programming.
  3. The field is constantly evolving and you will find it easy to learn new technologies, tools, and programming languages if you have a solid grasp of programmatic abstraction, optimization, algorithms, data structures, encapsulation, resource management, and security.
  4. Learn Software engineering as a discipline and modern software design and management techniques including Agile even if you don't plan to become a project, product or program manager.
  5. To learn data structure and algorithms in depth, try to take the following courses (along with your usual course work)
    1. CS50: Introduction to Computer Science https://pll.harvard.edu/course/cs50-introduction-computer-science?delta=0, and
    2. CS50's Introduction to Artificial Intelligence with Python https://pll.harvard.edu/course/cs50s-introduction-artificial-intelligence-python?delta=0
  6. Build a strong foundation in at least one programming language, (preferably C/C++). Java, C# and Python are great for enterprise development while JavaScript is lingua franca of the web, so learn it.
  7. Participate in open source software, with contributions to github, and do networking with linkedin. Practice coding on Project Euler, HackerRank and Leetcode.
  8. Hyperscalers such as Microsoft Azure provides excellent training opportunities such as Micorosft Learn website with wide variety of free training and courses on different roles.
  9. Microsoft Student Hub is a great place to start learning about how to become a data scientist, developer, AI engineer, and developer. You can learn about Web Development, Azure fundamentals, Python, General Programming, Git, Getting Started with AI on Azure, and many other topics here.

Network design and the daily operation of computer networks are highly sought after skills. Our national security interests are assured by the ability to streamline existing IT infrastructures and protect networks against cyberattacks. Whether you want to design, implement, and test physical computer components, build and manage computer programs, assist in IT operations, build awesome websites and mobile applications, order, store, and protect company data, or design data communication networks, a good computer science foundation is a great way to get there. 

Happy Programming!

Share