Software Engineering: Python Course

Multiple instructors are involved in teaching this topic at iSTEMLabs.Africa

Objective

Python is a simple-to-learn, yet, versatile programming language used in robotics, machine learning, scientific research, cybersecurity, devops and many more software projects. At the end of this course, participants should be able to determine the appropriate Python libraries (standard and 3rd-party) better suited to developing software solutions. In addition, participants should be comfortable with integrating external APIs, working with different data exchange formats, writing efficient, well-tested code and successfully deploying same to Linux servers.

Click here to register

Duration

This course runs for a total duration of 56 hours.

Prerequisites

To participate in this course, we require students posses knowledge of Version Control Software e.g. Git. Familiarity with collaboration platforms like Github.com and/or Bitbucket.org is a plus. Basic familiarity with computer science concepts such as, what programming languages are, web and internet systems, operating systems, the ability to describe each of these items and give examples without necessarily knowing all the details of how they work is also considered beneficial. Participants who already have experience with another programming language and/or databases will have an edge in this course.[§]

[§] Students who are familiar with items 2 - 10 from the Software Engineering Foundation Course course already meet these prerequisites.

Certification

Participants who complete this course will be awarded the Software Engineering: Python Developer certificate.

Cost

The cost of this course is N224,000 (Two-Hundred and Twenty-Four Thousand Naira Only).

As part of iSTEMLabsAfrica’s commitment to youth empowerment in Nigeria, we have partnered with the Skills and Entrepreneurship Development (S.A.E.D) department of the National Youth Service Corps (N.Y.S.C) scheme such that, any actively serving Youth Corper(s) who register(s) to participate in this course will only pay a fee of N10,000 (Ten Thousand Naira)

Course Content

  1. 1hr - iSTEMLabsAfrica Digital Awareness Health Check (1 hr FREE)
  2. 3hrs - Introduction to Python
    1. Installing Python
    2. Setting up Virtual Environments/Package Managers
    3. General overview of the language, syntax, features e.t.c., + writing your first Python program.
  3. 3hrs - Variables and Data Types in Python
    1. Using Primitives: Integer, Float, Boolean, Strings,
    2. Using Non-Primitives: Lists, Dictionaries, Tuples, Sets
  4. 1hr - Project A: The student’s ability to represent various types of raw data in Python is tested.
  5. 3hrs - Flow Control, Looping, and using Functions.
    1. Conditional Statements: If…Else, Switch, an alternative to If and Switch statements
    2. Loops: For Loops, While Loops
    3. Functions: Some In-built Functions, Parameters/Arguments, Writing your own, lambda
  6. 3hrs - Working with the O/S
    1. Common Utilities
    2. Reading/Writing Files
    3. Building scripts, passing arguments and more
  7. 1hr - Project B: The student’s ability to interact with the underlying O/S is tested.
  8. 3hrs - Object-Oriented Programming (OOP) in Python I
    1. Classes/Objects
    2. Working with multiple classes + Modules
    3. Exception Handling
  9. 3hrs - Introduction to Automated Testing
    1. Need for and types of automated tests
    2. Common Testing libraries (pytest, doctest)
    3. How good are your tests?
  10. 1hr - Project C: The student’s ability to properly structure a project using OOP techniques, and write well-tested code is assessed.
  11. 3hrs - Working with Databases in Python
    1. Python Database libraries
    2. Build a sample Database application
  12. 3hrs - Introduction to APIs I
    1. Understanding HTTP Verbs and using Python to interact with them
    2. API design overview
    3. Working with JSON, CSV, and YAML files
  13. 1hr - Project D: The student’s ability to build a simple database application is tested.
  14. 3hrs - Introduction to APIs II
    1. Planning and Building an Authentication API
  15. 3hrs - Introduction to APIs III
    1. HTML/JavaScript Refresher
    2. A Simple Login Application
    3. JWT Primer
  16. 1hr - Project E: The student’s ability to build a simple database-driven application with authentication.
  17. 3hrs - Using Development Frameworks I (Django)
    1. Planning and Building a simple Django application
  18. 3hrs - Using Development Frameworks II (Flask)
    1. Planning and Building a simple Flask application
  19. 1hr - Project F: The student’s ability to build a database-driven application using the Django and Flask frameworks is tested.
  20. 3hrs - Using Development Frameworks III
    1. Best Practices when using frameworks.
  21. 3hrs - Deploying Code I
    1. Introduction to DevOps with Ansible
    2. Ansible Deployment Example
    3. Deployment Next Steps
  22. 1hr - Project G: The student’s ability to plan a simple software project deployment using Ansible is evaluated
  23. 3hrs - Deploying Code II
    1. Linux Server Deployment
  24. 3hrs - Capstone Project
  25. 3hrs - Graduation Ceremony/Hackathon Event/Remote Job Workshop

Subscribe For Latest News

r