← All courses

Training

IT architecture and system design fundamentals, basic Python:

IT architecture and system design fundamentals, basic Python:

This 4-day intensive course walks you through that discovery by going over the entire life cycle of a multi-tier system and its related software project. You'll see what happens before any development takes place, and what impact the decisions and designs made at each step have on the development process. The development of the entire project, over the course of several iterations based on real-world iterations, will be executed, sometimes starting from nothing, in one of the fastest growing languages in the world—Python.

Learning Outcome

By the end of this course, the learner shall have the following skills:

  • Understand what happens over the course of a system's life (SDLC)
  • Establish what to expect from the pre-development life cycle steps.
  • Find out how the development-specific phases of the SDLC affect development.
  • Identify the existence of project-independent best practices and how to use them.
  • Find out how to design and implement a high-performance computing process.
  • Basic python programming
  • Understand the basic syntax structures.
  • Get updated on recent syntax changes in python 3.8 and 3.9 respectively.
  • Advanced Data handling in python.
  • Working with external libraries in python.
  • Working with files and encoding.
  • Understand different forms of data acquisition.
  • Linux basics
  • Remote queries
  • SSH

Prerequisites

  • High speed internet connection
  • Ability to use a computer
  • Ability to use the internet
  • Web camera (for remote learning only)
  • Microphone (for remote learning only)
  • Conferencing software (Zoom / Webex / MS Teams)
  • Manage files and understand basic file systems in the computer
  • Ability to communicate in the English language
  • Ability to connect to external servers
  • Full admin / root access

Course Outline

Programming versus Software Engineering.

  1. Programming with Python.
    1. What Is Algorithm
    2. What Is Programming
    3. What Is Program
    4. Machine Language
    5. Programming Language
    6. What Is Translator
    7. Brief History of Python
    8. Python Versions
    9. Installing Python
    10. IDEs
    11. Environment Variables
    12. Python Documentation
    13. Hello world with python
    14. Modes of Programming
    15. What Is Colab Notebook
    16. Why Colab Notebook Is Important
    17. Installing Colab Notebook
    18. Main Components of Colab Notebook
    19. Modes
    20. Exporting Notebook Documents
    21. Identifiers
    22. Reserved Words
    23. Lines and Indentation
    24. Comments
    25. Numbers
    26. Python Lists
    27. Python Tuples
    28. Python Dictionaries
    29. Python Sets
    30. Copying
    31. Python Strings
    32. String formatting
    33. Regular Expressions
    34. Arithmetic Operators
    35. Comparison (Relational) Operators
    36. Assignment Operators
    37. Logical Operators
    38. Membership Operators
    39. Operators Precedence
    40. Decision Making
    41. The if Statement
    42. The if else Statement
    43. For Loop
    44. While Loop
    45. Break And Continue
    46. Defining Your Own Functions
    47. Parameters
    48. Function Documentation
    49. Passing Collections to a Function
    50. Variable Number of Arguments
    51. Scope
    52. Map
    53. Filter
    54. Lambda
    55. What Are Modules
    56. Importing Modules
    57. Aliasing
    58. Importing Set Of Element From A Module
    59. Namespace
    60. What Are Packages
    61. dir function
    62. help function
    63. What Is Exception
    64. Exception Types
    65. Try Except Component
    66. Handling General Exception
    67. Handling Specific Exception
    68. Raise
    69. Access Modes
    70. Writing Data to a File
    71. Reading Data From a File
    72. Read Functions
    73. PDF reading
    74. XML files
    75. What is OOP
    76. Why OOP Is Important
    77. Classes
    78. Attributes
    79. Methods
    80. Constructor
    81. Inheritance
    82. Polymorphism
    83. Static class
  2. The Software Development LifeCycle(SDLC).
    1. The SDLC Overview.
    2. Pre-development phases of SDLC.
    3. Specific phases of SDLC.
    4. Post-development phases of the SDLC.
  3. System Modeling.
    1. System Modeling Overview.
    2. Software Architecture.
    3. Use Cases.
    4. Data Structure and Flow.
    5. Interprocess Communication.
    6. System Scope and Scale.
  4. Methodologies, Paradigms, and Practices.
    1. Methodologies, Paradigms, and Practices Overview.
    2. Process Methodologies.
    3. Development Paradigms.
    4. Development Practices.
  5. Assessment.

Practical, connected learning

My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.