This OpenHack enables attendees to quickly build and deploy Azure Serverless solutions that are comprised of cutting-edge compute services like Functions, Logic Apps, Event Grid, Service Bus, Event Hubs and Cosmos DB.
This OpenHack simulates a real-world scenario where an ice cream company wants to use Platform as a Service (PaaS) to build and release an API to integrate into their distributor’s application.
During the “hacking” attendees will focus on:
- Building serverless functions, web APIs, and CI/CD pipeline to support them
- Implementing Serverless technologies to integrate line-of-business app workflows, process user/data telemetry and create business KPI-aligned reports.
By the end of the OpenHack, attendees will have built out a technical solution that is a full serverless solution that can create workflows between systems and handle events, files, and data ingestion.
About this course
Azure Functions, Logic Apps, Event Grid, Cosmos DB, API Management, Azure Event Hubs, Azure DevOps or GitHub (team choice), Azure Monitor, Dynamics 365/Office 365, Cognitive APIs, Service Bus
Required knowledge of Azure fundamentals.
Challenge 1: Environment Configuration
In this challenge, you will get your development environment ready to develop serverless applications.
- Install the required software and pre-requisites to build and test the Azure Functions Locally
Challenge 2: Create your first serverless function & workflow
In this challenge, you will create and deploy your first Azure Function and Logic App.
- Create your first Functions Web API locally and deploy to the Azure cloud
- Get familiar with the Azure Portal to create resources required to host your APIs
- Build your first Logic Apps workflow on the portal directly
Challenge 3: Expand and build a full set of APIs to support business needs
In this challenge, you will build an API to persist and retrieve data from a data store and configure a CI/CD pipeline.
- Gain experience building multiple Web APIs that accept and output a different type of data in JSON
- Experience the local and cloud testing of the APIs by making calls from your local machine
- Build a Continuous Deployment and Continuous Integration (CI/CD) pipeline from source control
Challenge 4: Deploy a management layer for APIs to monitor and track your APIs
In this challenge, you will enable monitoring of the APIs, as well as devise an API management strategy.
- Learn how you can capture and report telemetry about the APIs that are hosted on the cloud
- Experience building an API management layer to manage the APIs and expose it through a common base endpoint
Challenge 5: Build a workflow process
In this challenge, you will build a business process workflow which integrates with a CRM system.
- Gain experience using a graphical user interface editor to build Workflows using Logic Apps
- Experience the drag and drop connectors to bring Line of Business apps to create a flow and notify contacts via emails
Challenge 6: Process large amount of unstructured data
In this challenge, you will process files in a batch process and persist to a data store
- Build solutions to process batch files coming into a storage account
- Learn how to parse the flat files and store them on a database (structured or unstructured)
Challenge 7: Process large amount of incoming events
In this challenge, you will process batches of messages from Event Hub and persist in a data store. You will also extend the monitoring approach created earlier to track the number of running Azure Function instances.
- Learn how to extend the API’s to parse the JSON sales events and store them in a backend data store
- Demonstrate how you tracked the number of instances that your Azure Functions scaled up to with App Insights
Challenge 8: Messaging Patterns and Virtual Network Integration
In this challenge, you will configure a messaging solution capability of filtering messages, as well as using virtual network integration to save data to a private data store.
- Learn how to use publisher/subscriber messaging patterns with filtering rules to enable subscribers to process specific messages
- Build a serverless solution capable of working with Azure resources which utilize virtual network access restrictions
Challenge 9: Alerting based on user sentiments
In this challenge, you will integrate machine learning capabilities into the current solution to detect and alert on user sentiment.
- Leveraging sentiment analysis to assess the user sentiments based on feedback
- Review the sentiments in batch and alert the responsible contacts what sentiment score products have been receiving
Challenge 10: Putting it all together
In this challenge, you will create a report which summarizes key business metrics derived from the full solution.
- Bring all things together and demonstrate how things flow end to end
- Report insights on how the products are behaving
- Build Azure cloud native event driven applications (mid-tier and backend) using Azure Serverless technologies
- Increase awareness on building scalable, event-driven applications with messaging services for asynchronous communication
- Remove infrastructure related tasks and considerations from developers to focus on rapid application development
- Help make decisions on when to use and how to choose Azure Services to achieve the business outcomes
- Learn best practices for building CI/CD for Serverless and processing events at scale
Building API’s with Serverless event processing, workflows and integration with different systems, streaming and analytics, VNET integration and batch processing of high column data.
- Enterprise Integration – bring various line of business systems and applications together to orchestrate the process without having to provision large infrastructure footprint
- DevOps Practice – building CI and CD for the services developed to help with best practice for source control for code management
- Scaling & Logging – understanding the scaling aspect of services when you have a spike in events and visualization of application insights to gather business data
- Target Audience:
- Microsoft – CSE, CSA, GBB, ATT, SE, TPM
- Customer – App Developers
- Target verticals: Cross-Industry
- Customer profile: Examples:
- Modern Application Development – customers looking to build cloud native applications and use Platform as a Service (PaaS) services on Azure to remove the overhead of infrastructure management and reduce the time to market for applications. High focus on rapid application developed.
- Event Driven Distributed Architecture – customers looking to architected solution that rely on messaging services for communication between systems and services and focus on async processing for effective scaling and management.