Course Details
Topic 1: Introduction to DevOps
- What is DevOps?
- Explore the DevOps journey
- Identify transformation teams
- Explore shared goals and define timelines
Topic 2: Choose the right project
- Explore greenfield and brownfield projects
- Decide when to use greenfield and brownfield projects
- Decide when to use systems of record versus systems of engagement
- Identify groups to minimize initial resistance
- Identify project metrics and key performance indicators (KPIs)
Topic 3: Describe team structures
- Explore agile development practices
- Explore principles of agile development
- Define organization structure for agile practices
- Explore ideal DevOps team members
- Enable in-team and cross-team collaboration
- Select tools and processes for agile practices
Topic 4: Choose the DevOps tools
- What is Azure DevOps?
- What is GitHub?
- Explore an authorization and access strategy
- Migrate or integrate existing work management tools
- Migrate or integrate existing test management tools
- Design a license management strategy
Topic 5: Plan Agile with GitHub Projects and Azure Boards
- Introduction to GitHub Projects and Project boards
- Introduction to Azure Boards
- Link GitHub to Azure Boards
- Configure GitHub Projects
- Manage work with GitHub Project boards
- Customize Project views
- Collaborate using team discussions
- Agile Plan and Portfolio Management with Azure Boards
Topic 6: Introduction to source control
- Explore DevOps foundational practices
- What is source control?
- Explore benefits of source control
- Explore best practices for source control
Topic 7: Describe types of source control systems
- Understand centralized source control
- Understand distributed source control
- Explore Git and Team Foundation Version Control
- Examine and choose Git
- Understand objections to using Git
- Describe working with Git locally
Topic 8: Work with Azure Repos and GitHub
- Introduction to Azure Repos
- Introduction to GitHub
- Migrate from TFVC to Git
- Use GIT-TFS
- Develop online with GitHub Codespaces
Topic 9: Structure your Git Repo
- Explore monorepo versus multiple repos
- Implement a change log
Topic 10: Manage Git branches and workflows
- Explore branch workflow types
- Explore feature branch workflow
- Explore Git branch model for continuous delivery
- Explore GitHub flow
- Explore fork workflow
- Version Control with Git in Azure Repos
Topic 11: Collaborate with pull requests in Azure Repos
- Collaborate with pull requests
- Exercise - Azure Repos collaborating with pull requests
- Examine GitHub mobile for pull request approvals
Topic 12: Identify technical debt
- Examine code quality
- Examine complexity and quality metrics
- Introduction to technical debt
- Measure and manage technical debt
- Integrate other code quality tools
- Plan effective code reviews
Topic 13: Explore Git hooks
- Introduction to Git hooks
- Implement Git hooks
Topic 14: Plan foster inner source
- Explore foster inner source
- Implement the fork workflow
- Describe inner source with forks
Topic 15: Manage Git repositories
- Work with large repositories
- Purge repository data
- Manage releases with GitHub Repos
- Automate release notes with GitHub
Topic 16: Explore Azure Pipelines
- Explore the concept of pipelines in DevOps
- Describe Azure Pipelines
- Understand Azure Pipelines key terms
Topic 17: Manage Azure Pipeline agents and pools
- Choose between Microsoft-hosted versus self-hosted agents
- Explore job types
- Introduction to agent pools
- Explore predefined agent pool
- Understand typical situations for agent pools
- Communicate with Azure Pipelines
- Communicate to deploy to target servers
- Examine other considerations
- Describe security of agent pools
- Configure agent pools and understanding pipeline styles
Topic 18: Describe pipelines and concurrency
- Understand parallel jobs
- Estimate parallel jobs
- Describe Azure Pipelines and open-source projects
- Explore Azure Pipelines and Visual Designer
- Describe Azure Pipelines and YAML
Topic 19: Explore continuous integration
- Introduction to continuous integration
- Learn the four pillars of continuous integration
- Explore benefits of continuous integration
- Describe build properties
- Enable Continuous Integration with Azure Pipelines
Topic 20: Implement a pipeline strategy
- Configure agent demands
- Implement multi-agent builds
- Explore source control types supported by Azure Pipeline
Topic 21: Integrate with Azure Pipelines
- Describe the anatomy of a pipeline
- Understand the pipeline structure
- Detail templates
- Explore YAML resources
- Use multiple repositories in your pipeline
Topic 22: Introduction to GitHub Actions
- What are Actions?
- Explore Actions flow
- Understand workflows
- Describe standard workflow syntax elements
- Explore events
- Explore jobs
- Explore runners
- Examine release and test an action
Topic 23: Learn continuous integration with GitHub Actions
- Describe continuous integration with actions
- Examine environment variables
- Share artifacts between jobs
- Examine Workflow badges
- Describe best practices for creating actions
- Mark releases with Git tags
- Create encrypted secrets
- Use secrets in a workflow
- Implement GitHub Actions for CI/CD
Topic 24: Design a container build strategy
- Examine structure of containers
- Work with Docker containers
- Understand Dockerfile core concepts
- Examine multi-stage dockerfiles
- Examine considerations for multiple stage builds
- Explore Azure container-related services
- Deploy Docker containers to Azure App Service web apps
Topic 25: Introduction to continuous delivery
- Explore traditional IT development cycle
- What is continuous delivery?
- Move to continuous delivery
- Understand releases and deployments
- Understand release process versus release
Topic 26: Create a release pipeline
- Describe Azure DevOps release pipeline capabilities
- Explore release pipelines
- Explore artifact sources
- Choose the appropriate artifact source
- Exercise - select an artifact source
- Examine considerations for deployment to stages
- Exercise - set up stages
- Explore build and release tasks
- Explore custom build and release tasks
- Explore release jobs
- Configure Pipelines as Code with YAML
Topic 27: Explore release recommendations
- Understand the delivery cadence and three types of triggers
- Exercise - select your delivery and deployment cadence
- Explore release approvals
- Exercise - set up manual approvals
- Explore release gates
- Use release gates to protect quality
- Control Deployments using Release Gates
Topic 28: Provision and test environments
- Provision and configure target environments
- Exercise - set up service connections
- Configure automated integration and functional test automation
- Understand Shift-left
- Set up and run availability tests
- Explore Azure Load Testing
- Set up and run functional tests
Topic 29: Manage and modularize tasks and templates
- Examine task groups
- Exercise - create and manage task groups
- Explore variables in release pipelines
- Understand variable groups
- Exercise - create and manage variable groups
Topic 30: Automate inspection of health
- Automate inspection of health
- Explore events and notifications
- Explore service hooks
- Exercise - set up service hooks to monitor the pipeline
- Configure Azure DevOps notifications
- Configure GitHub notifications
- Explore how to measure quality of your release process
- Examine release notes and documentation
- Examine considerations for choosing release management tools
- Explore common release management tools
Topic 31: Introduction to deployment patterns
- Explore microservices architecture
- Examine classical deployment patterns
- Understand modern deployment patterns
Topic 32: Implement blue-green deployment and feature toggles
- What is blue-green deployment?
- Explore deployment slots
- Exercise - set up a blue-green deployment
- Introduction to feature toggles
- Describe feature toggle maintenance
Topic 33: Implement canary releases and dark launching
- Explore canary releases
- Examine Traffic Manager
- Understand dark launching
Topic 34: Implement A/B testing and progressive exposure deployment
- What is A/B testing?
- Explore CI-CD with deployment rings
- Exercise - Ring-based deployment
Topic 35: Integrate with identity management systems
- Integrate GitHub with single sign-on (SSO)
- Explore service principals
- Explore Managed Identity
Topic 36: Manage application configuration data
- Rethink application configuration data
- Explore separation of concerns
- Understand external configuration store patterns
- Introduction to Azure App Configuration
- Examine Key-value pairs
- Examine App configuration feature management
- Integrate Azure Key Vault with Azure Pipelines
- Manage secrets, tokens and certificates
- Examine DevOps inner and outer loop
- Integrate Azure Key Vault with Azure DevOps
- Enable Dynamic Configuration and Feature Flags
Topic 37: Explore infrastructure as code and configuration management
- Explore environment deployment
- Examine environment configuration
- Understand imperative versus declarative configuration
- Understand idempotent configuration
Topic 38: Create Azure resources using Azure Resource Manager templates
- Why use Azure Resource Manager templates?
- Explore template components
- Manage dependencies
- Modularize templates
- Manage secrets in templates
- Deployments using Azure Bicep templates
Topic 39: Create Azure resources by using Azure CLI
- What is Azure CLI?
- Work with Azure CLI
- Exercise - Run templates using Azure CLI
Topic 40: Explore Azure Automation with DevOps
- Create automation accounts
- What is a runbook?
- Understand automation shared resources
- Explore runbook gallery
- Examine webhooks
- Explore source control integration
- Explore PowerShell workflows
- Create a workflow
- Explore hybrid management
- Exercise - Create and run a workflow runbook
- Examine checkpoint and parallel processing
- Topic 35 Implement Desired State Configuration (DSC)
- Understand configuration drift
- Explore Desired State Configuration (DSC)
- Explore Azure Automation State configuration (DSC)
- Examine DSC configuration file
- Exercise - Import and compile
- Exercise - Onboard machines for management
- Explore hybrid management
- Implement DSC and Linux Automation on Azure
Topic 41: Implement Bicep
- What is Bicep?
- Install Bicep
- Exercise - Create Bicep templates
- Understand Bicep file structure and syntax
- Exercise - Deploy a Bicep file from Azure Pipelines
- Exercise - Deploy a Bicep file from GitHub workflows
Topic 42: Explore package dependencies
- What is dependency management?
- Describe elements of a dependency management strategy
- Identify dependencies
- Understand source and package componentization
- Decompose your system
- Scan your codebase for dependencies
Topic 43: Understand package management
- Explore packages
- Understand package feeds
- Explore package feed managers
- Explore common public package sources
- Explore self-hosted and SaaS based package sources
- Consume packages
- Introduction to Azure Artifacts
- Publish packages
- Package management with Azure Artifacts
Topic 44: Migrate consolidating and secure artifacts
- Identify existing artifact repositories
- Migrate and integrating artifact repositories
- Secure access to package feeds
- Examine roles
- Examine permissions
- Examine authentication
Topic 45: Implement a versioning strategy
- Understand versioning of artifacts
- Explore semantic versioning
- Examine release views
- Promote packages
- Exercise - Promote a package
- Explore best practices for versioning
- Exercise - Push from the pipeline
Topic 46: Introduction to GitHub Packages
- Publish packages
- Install a package
- Delete and restore a package
- Explore package access control and visibility
Topic 47: Implement tools to track usage and flow
- Understand the inner loop
- Introduction to continuous monitoring
- Explore Azure Monitor and Log Analytics
- Examine Kusto Query Language (KQL)
- Explore Application Insights
- Implement Application Insights
- Exercise - Add Application Insights to an ASP.NET core application
- Monitor application performance with Application Insights
Topic 48: Develop monitor and status dashboards
- Explore Azure Dashboards
- Examine view designer in Azure Monitor
- Explore Azure Monitor workbooks
- Explore Power BI
- Build your own custom application
Topic 49: Share knowledge within teams
- Share acquired knowledge within development teams
- Introduction to Azure DevOps project wikis
- Integrate with Azure Boards
- Share team knowledge using Azure Project Wiki
Topic 50: Design processes to automate application analytics
- Explore rapid responses and augmented search
- Integrate telemetry
- Examine monitoring tools and technologies
Topic 51: Manage alerts, blameless retrospectives and a just culture
- Examine when get a notification
- Explore how to fix it
- Explore smart detection notifications
- Improve performance
- Understand server response time degradation
- Reduce meaningless and non-actionable alerts
- Examine blameless retrospective
- Develop a just culture
Topic 52: Introduction to Secure DevOps
- Describe SQL injection attack
- Understand DevSecOps
- Explore Secure DevOps Pipeline
- Explore key validation points
- Explore continuous security validation
- Understand threat modeling
- Exercise threat modeling
Topic 53: Implement open-source software
- Explore how software is built
- What is open-source software
- Explore corporate concerns with open-source software components
- Introduction to open-source licenses
- Explore common open-source licenses
- Examine license implications and ratings
Topic 54: Software Composition Analysis
- Inspect and validate code bases for compliance
- Explore software composition analysis (SCA)
- Integrate Mend with Azure Pipelines
- Implement GitHub Dependabot alerts and security updates
- Integrate software composition analysis checks into pipelines
- Examine tools for assess package security and license rate
- Interpret alerts from scanner tools
- Implement security and compliance in an Azure Pipeline
Topic 55: Static analyzers
- Explore SonarCloud
- Explore CodeQL in GitHub
- Manage technical debt with SonarCloud and Azure DevOps
Topic 56: OWASP and Dynamic Analyzers
- Plan Implement OWASP Secure Coding Practices
- Explore OWASP ZAP penetration test
- Explore OWASP ZAP results and bugs
Topic 57: Security Monitoring and Governance
- Implement pipeline security
- Explore Microsoft Defender for Cloud
- Examine Microsoft Defender for Cloud usage scenarios
- Explore Azure Policy
- Understand policies
- Explore initiatives
- Explore resource locks
- Explore Azure Blueprints
- Understand Microsoft Defender for Identity
Final Assessment
- Written Assessment (SAQ)
- Practical Performance
Course Info
Promotion Code
Promo or discount cannot be applied to WSQ courses
Minimum Entry Requirement
Knowledge and Skills
- Able to operate using computer functions with minimum Computer Literacy Level 2 based on ICAS Computer Skills Assessment Framework
- Minimum 3 GCE ‘O’ Levels Passes including English or WPL Level 5 (Average of Reading, Listening, Speaking & Writing Scores)
Attitude
- Positive Learning Attitude
- Enthusiastic Learner
Experience
- Minimum of 1 year of working experience.
Target Year Group : 21-65 years old
Minimum Software/Hardware Requirement
Software:
You need to sign up a Azure account (Credit Card is required).
Hardware: Windows and Mac Laptops
About Progressive Wage Model (PWM)
The Progressive Wage Model (PWM) helps to increase wages of workers through upgrading skills and improving productivity.
Employers must ensure that their Singapore citizen and PR workers meet the PWM training requirements of attaining at least 1 Workforce Skills Qualification (WSQ) Statement of Attainment, out of the list of approved WSQ training modules.
For more information on PWM, please visit MOM site.
Funding Eligility Criteria
Individual Sponsored Trainee | Employer Sponsored Trainee |
|
|
SkillsFuture Credit:
PSEA:
|
Absentee Payroll (AP) Funding:
SFEC:
|
Steps to Apply Skills Future Claim
- The staff will send you an invoice with the fee breakdown.
- Login to the MySkillsFuture portal, select the course you’re enrolling on and enter the course date and schedule.
- Enter the course fee payable by you (including GST) and enter the amount of credit to claim.
- Upload your invoice and click ‘Submit’
SkillsFuture Level-Up Program
The SkillsFuture Level-Up Programme provides greater structural support for mid-career Singaporeans aged 40 years and above to pursue a substantive skills reboot and stay relevant in a changing economy. For more information, visit SkillsFuture Level-Up Programme
Get Additional Course Fee Support Up to $500 under UTAP
The Union Training Assistance Programme (UTAP) is a training benefit provided to NTUC Union Members with an objective of encouraging them to upgrade with skills training. It is provided to minimize the training cost. If you are a NTUC Union Member then you can get 50% funding (capped at $500 per year) under Union Training Assistance Programme (UTAP).
For more information visit NTUC U Portal – Union Training Assistance Program (UTAP)
Steps to Apply UTAP
- Log in to your U Portal account to submit your UTAP application upon completion of the course.
Note
- SSG subsidy is available for Singapore Citizens, Permanent Residents, and Corporates.
- All Singaporeans aged 25 and above can use their SkillsFuture Credit to pay. For more details, visit www.skillsfuture.gov.sg/credit
- An unfunded course fee can be claimed via SkillsFuture Credit or paid in cash.
- UTAP funding for NTUC Union Members is capped at $250 for 39 years and below and at $500 for 40 years and above.
- UTAP support amount will be paid to training provider first and claimed after end of class by learner.
Job Roles
- Data Scientist
- Machine Learning Engineer
- AI Researcher
- Deep Learning Specialist
- Computer Vision Engineer
- AI Product Developer
- Graphics Software Developer
- Multimedia Artist (using AI)
- Bioinformatics Researcher (for GAN-based simulations)
- Financial Modeler (using AI for simulations)
- R&D Specialist in AI
- Robotics Engineer (with AI modeling)
- Game Developer (using GANs for content generation)
- Innovation Manager (in tech firms)
- Computational Scientist
Trainers
Muhammad Samer Sallam: Muhammad Samer Sallam is a software engineering and data Scientist with more than 3 years’ experience in the field of machine learning/ deep learning. He has a great passion for data science, intelligent-seeming algorithms and web technologies to develop smart web products improving the human life. His interest led him to achieve comprehensive experiences in C#, Python, MATLAB, HTML & CSS, Javascript, and Mysql.
His Work experiences are as below:
- Control and Automation Engineer at Damascus International Airport,
- Damascus (Syria) Research and Development Team Leader at Rachis Systems, Kuala Lumpur (Malaysia)
- Machine Learning Specialist in Abundent, Kuala Lumpur (Malaysia)
Dr. Aanand: Dr. Aanand is a Full Stack Data Scientist who once had a torrid love affair with Physics. He has consulted and published in the area of Public Health, Electricity Markets, Telecom, BFSI, Advertising & Communication Strategies and Digital & Social Media Technologies. He has worked on assignments with international agencies such as International Monetary Fund, World Bank, Royal Netherland Embassy etc. besides MNCs like Tata Consultancy Services, Kie Square Consulting and several government organizations of national importance. He regularly conducts general training programs in Python (Pandas, NumPy, SciPy, Matplotlib, Bokeh), R (dplyr, rstanarm, knitR, ggplot2), Data Visualization (Tableau, D3.js) and Machine Learning (Reinforced Learning, Scikit Learn) and specialized training programs on Structural Equation Modeling and SAP Hana. He holds a doctorate in Operations Research from Indian Institute of Management Ahmedabad and a post-graduate in Physics from the University of Mumbai. He has advanced training in mathematical programming including optimization, advanced multivariate data analysis, and simulation techniques. When he is not teaching or consulting he can be found meditating or heading for an adventurous trek.
Amir Othman: Amir Othman is a software engineer by profession. Being educated in Bauhaus Universität Weimar and Hochschule Ulm, he brings experiences from different facades of the world.With expertise in web technology, natural language processing and machine learning, he is a freelance data scientist. Some of his works include two international news aggregator:
www.kronologimalaysia.com and www.diezeitachse.de
He also holds an impressive portfolio for data visualizations, primarily focusing on web-based techniques. After the realization set in that, he does not want to make it as an electronic engineer, he took the decision to go and try something new out of pure curiosity and thirst for a new adventure. It didn't come quite handy but he has changed his major three times. It's not a surprise that he studied artificial intelligence and found himself all over again. he has a strong passion for machine learning and data science, fueled by the drive to learn and the endurance for growth beyond the ordinary.
Fares Hasan: Fares Hasan has a strong passion for machine learning and data science, fueled by the drive to learn and the endurance for growth beyond the ordinary. He has worked on various projects that inspired him. His work with medical imaging in diagnosing tuberculosis using chest x-ray images has given him a purpose and clarity of the quality of life we could achieve from developing artificial intelligence technologies. His next mission is to further his research in this field for there he could contribute by an ounce for the betterment of humanity. He is also focused on contributing to various initiatives workshops and meetups to spread the knowledge of artificial intelligence and machine learning in support of the democratization of Ai efforts. He is given the main segment in DevCon initiative by MAGIC (Malaysian Global Innovation Center) in the machine learning chapter.