SlideShare a Scribd company logo
1 of 39
Download to read offline
AWS Dev Tips: Learn
from the experts
LEARN FROM LEADERS.
Ossama Ghanem
Senior Tech Lead + Trainer
PhoenixDX
Stuart Harris
Software Development Lead
Kiandra IT
Jaques Van der Merwe
Senior Solutions Architect
PhoenixDX
Raphael Ranieri
Tech Lead + MVP
PhoenixDX
2
Order of
events
6:05 PM Welcome & Introduction
6:10 PM Dev Tips (15 mins each)
AWS Overview by Jaques Van der Merwe
AWS Use Case by Ossama Ghanem
Streaming video from AWS S3 by Stuart Harris
AWS Enablement & Certifications by Raphael Ranieri
7:20 PM Kahoot!
AWS Overview
3
3
Jaques Van der Merwe
Senior Solutions Architect
PhoenixDX
4
What is the extent of the relationship?
● On AWS cloud since 2008
● Signed an Strategic Collaboration Agreement (SCA) in 2020
● Newest OutSystems ODC platform is natively built on AWS
● OutSystems has won Partner of the Year in AWS for ASEAN region
● OutSystems has a path for customers using legacy systems from on-premise legacy (SAP
ECC, AS/400, Lotus Notes, etc.) to AWS cloud
OutSystems and AWS together
5
The unique value proposition to customers
● OutSystems Helps Extend/Refactor/Re-Build Core Systems
● Maximise Talent Pool
● Quicken Innovation
Why it matters
6
These AWS services are available in the Forge today.
AWS in the Forge
Textract Lex Polly Translate
Transcribe
SQS S3 Glacier Kinesis
SNS
Delivering a Facial
Recognition Solution
in OutSystems
7
Ossama Ghanem
Senior Tech Lead + Trainer
PhoenixDX
8
A form of biometric security which can confirm an individual’s identity using their face.
Why should you consider this technology?
● Extremely accurate face-based user verification
● Elevates user experience
● Facial recognition technology is becoming way more accessible
What is Facial Recognition?
9
Objective
Increase the level of certainty of who is performing security-based activities
by improving the user identification and verification process.
Solution
● Introduction of Facial Recognition on shift check in & check out
● Sub 1.5 second comparison with 99.2% accuracy rate
● Integration with existing exception monitoring mechanisms
Currently running over 75,000 verifications a month
BOSS Time & Attendance
10
Solution Overview
11
The AWS Toolkit
Amazon
S3
Amazon
Rekognition
AWS
Lambda
Amazon
RDS
Amazon
Cloudwatch
Amazon
API Gateway
A compute service that lets you run
code without provisioning or
managing servers.
Provides highly accurate facial
analysis, face comparison, and face
search capabilities.
An object storage service that offers
scalability, data availability, security,
and performance.
A service for creating, publishing,
maintaining, monitoring, and
securing REST, HTTP, and WebSocket
APIs at any scale.
A collection of managed services that
makes it simple to set up, operate,
and scale databases in the cloud.
A monitoring service that provides
data and actionable insights for AWS,
hybrid, and on-premises applications
and infrastructure resources.
12
AWS Verification Sequence
Video Streaming via
AWS S3
13
Stuart Harris
Software Development Lead
Kiandra IT
Video Streaming via AWS S3
● Why stream video?
● Solution overview
● Video playback
● Configure your buckets
● Use the API
● Upload
Why stream video?
15
The Scenario
● Job applicants upload videos
● Videos are only available to intended
recipients
● The first frame is displayed before playback
● Playback can start immediately
16
Solution Options
Static videos
● OutSystems resources
● Poor app performance
1
Public videos
● Youtube, etc
● Cannot restrict access
2
AWS S3
● Can restrict access
3
Solution Overview
17
Web App OutSystems App
AWS_EXT
AWS S3 API
Upload
Playback
Video URL
Video URL
Upload
Convert
Video Playback
18
● Video player control
● Temporary URL
● Caching the URL
● AWS CORS configuration
● Consider using a CDN (we didn’t need one)
● Transcoding with MediaConvert
Configure your
buckets
19
AWS S3 Configuration
20
For each environment
● Create API user accounts
● Record “secret” and “access” keys
● Access type “Programmatic access - with an access key”
● Create S3 buckets (in the correct AWS region)
S3 Bucket Policy
21
● Ensure bucket public access is off (the default)
● Give access to the API user with a bucket policy
"Statement": [
{
"Sid": "Stmt999999999999",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::99999999999:user/myproj-dev-api"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::myproj-dev/*"
} ]
…
CORS Configuration
22
[ {
"AllowedHeaders": [ … ],
"AllowedMethods": [ "GET" ],
"AllowedOrigins": [ "https://YOUR_DOMAIN.com" ],
"ExposeHeaders": [ … ],
"MaxAgeSeconds": 3000
} ]
● Set “Allowed Origins” to your application URL
Use the API
23
Connecting to AWS S3
24
● AWS S3 API
● To connect, you will need:
○ AWS Access Key
○ AWS Secret Key
○ AWS Region Name
○ AWS Bucket Name
Get Temporary URL
25
● AmazonS3Client.GetPreSignedURL
Expires = DateTime.UtcNow.AddMinutes(durationMins)
● Cached server action
● Cache time should be less than the URL timeout
Upload
26
Uploading files
27
Upload the whole file with
● Store file metadata
● TransferUtilityUploadRequest.Upload
● Generate the File “Key” (Not the filename!)
● Create a pseudo path with <ENTITY>/<ID>/<KEY>
eg CUSTOMER/123/abcd-1234-cbad.mpg
Uploading large files
28
Upload in chunks
● AmazonS3Client.InitiateMultipartUpload
● AmazonS3Client.UploadPart
● AmazonS3Client.CompleteMultipartUpload
● Custom client-side upload widget to chunk the file
Video Streaming via AWS S3
Questions?
AWS Enablement &
Certifications
30
Raphael Ranieri
Tech Lead + MVP
PhoenixDX
“Handled in AWS”
“Handled in AWS”
“Handled in AWS”
…
The AWS Iceberg
“Built in AWS Lambda”
“Stored in AWS S3”
“Hosted on AWS EC2”
…
31
Why get certified?
● Over 200 services
● Industry standard
● Market visibility
● Getting ready for containerisation of OutSystems in ODC
● Better understanding of end-to-end accelerator implementation
https://www.outsystems.com/aws-cloud-accelerators/
32
33
AWS
Certifications
and
Pathways
The AWS Certified Cloud Practitioner (CCP) is the easiest Amazon Web Services certification. It’s a cloud beginner-friendly
certification that covers the basics of AWS and the cloud and requires no technical experience as a prerequisite. Though,
unless you have some experience with AWS, you’ll still need to study to ace it. (It’s not that easy.)
It covers around 56 AWS services, almost 25% of the AWS Universe.
It’s probably for you if: You need to know foundational cloud concepts — like what is cloud, what is cloud migration, and how
does AWS works at a high level — but won’t be getting your hands dirty with implementation.
AWS Cloud Practitioner
34
● Prerequisites: None
● Recommended Experience: 6 months of AWS and industry knowledge
● Skills covered:
○ Basic AWS architectural foundations
○ Key AWS services
○ AWS security and compliance
AWS Solution Architect
The AWS Certified Solutions Architect – Associate certification gives you a broad overview of AWS, and forms a valuable foundation on
which you can build everything else you’ll learn moving forward. There’s a reason it’s been the #1 cloud certification for years running.
The CSA – Associate certification focuses on the core AWS services, like Identity and Access Management (IAM), Virtual Private Cloud
(VPC), S3, and EC2. Studying these core services will give you a good understanding of how AWS approaches security, networking, data
storage, and compute capability.
It’s probably for you if: If you’re going to be working in AWS in any hands-on capacity, the Associate-level certifications should mark the
point where your journey truly begins. The AWS Cloud Practitioner provides a solid conceptual footing, but the AWS Associate-level
certifications are where the rubber really meets the road in terms of day-to-day implementation.
35
● Recommended Experience: One year of experience working in AWS to solve problems and implement solutions.
● Skills covered:
○ How AWS-based applications work
○ Building secure applications on AWS platform
○ Deploying hybrid AWS systems
○ Hands-on AWS application design
○ AWS application development
○ Security in AWS environments
Questions?
37
Join the Kahoot game
Join at www.kahoot.it
or with the Kahoot! app
Pin # in chat…
WINNER please email margaret@phoenix-dx.com
38
Prize = Awesome Swag
WINNER please email margaret@phoenix-dx.com
Thank you!
39

More Related Content

Similar to AWS Dev Tips: Learn from the experts

Moving your SAP Environment to the Cloud
Moving your SAP Environment to the Cloud Moving your SAP Environment to the Cloud
Moving your SAP Environment to the Cloud REAN Cloud
 
Simplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing ZoneSimplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing ZoneAmazon Web Services
 
Preparing for AWS Certification/ Advanced Security Training
Preparing for AWS Certification/ Advanced Security TrainingPreparing for AWS Certification/ Advanced Security Training
Preparing for AWS Certification/ Advanced Security TrainingAmazon Web Services
 
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...Edureka!
 
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | Edureka
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | EdurekaAmazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | Edureka
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | EdurekaEdureka!
 
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice CSS17: Atlanta - The AWS Shared Responsibility Model in Practice
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice Alert Logic
 
AWS Training Institute in Gurgaon.pptx
AWS Training Institute in Gurgaon.pptxAWS Training Institute in Gurgaon.pptx
AWS Training Institute in Gurgaon.pptxAPTRON Gurgaon
 
Innovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you startInnovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you startShiva Narayanaswamy
 
AWS Webcast - Understanding the AWS Security Model
AWS Webcast - Understanding the AWS Security ModelAWS Webcast - Understanding the AWS Security Model
AWS Webcast - Understanding the AWS Security ModelAmazon Web Services
 
Serverless Architectures on AWS - Pop-up Loft Tel Aviv
Serverless Architectures on AWS - Pop-up Loft Tel AvivServerless Architectures on AWS - Pop-up Loft Tel Aviv
Serverless Architectures on AWS - Pop-up Loft Tel AvivAmazon Web Services
 
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도Amazon Web Services Korea
 
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...Amazon Web Services
 
re:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loftre:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF LoftAmazon Web Services
 
AWS re:Invent 2016: State of the Union: Containers (CON316)
AWS re:Invent 2016: State of the Union:  Containers (CON316)AWS re:Invent 2016: State of the Union:  Containers (CON316)
AWS re:Invent 2016: State of the Union: Containers (CON316)Amazon Web Services
 
Cloud is the New Normal, So How Do I Get Started? - Business
Cloud is the New Normal, So How Do I Get Started? - BusinessCloud is the New Normal, So How Do I Get Started? - Business
Cloud is the New Normal, So How Do I Get Started? - BusinessAmazon Web Services
 
Career Benefits of AWS Certifications.pptx
Career Benefits of AWS Certifications.pptxCareer Benefits of AWS Certifications.pptx
Career Benefits of AWS Certifications.pptxInfosectrain3
 

Similar to AWS Dev Tips: Learn from the experts (20)

Moving your SAP Environment to the Cloud
Moving your SAP Environment to the Cloud Moving your SAP Environment to the Cloud
Moving your SAP Environment to the Cloud
 
Simplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing ZoneSimplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing Zone
 
Preparing for AWS Certification/ Advanced Security Training
Preparing for AWS Certification/ Advanced Security TrainingPreparing for AWS Certification/ Advanced Security Training
Preparing for AWS Certification/ Advanced Security Training
 
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...
AWS Certification | AWS Architect Certification Training | AWS Tutorial | AWS...
 
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | Edureka
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | EdurekaAmazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | Edureka
Amazon AWS | What is Amazon AWS | AWS Tutorial | AWS Training | Edureka
 
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice CSS17: Atlanta - The AWS Shared Responsibility Model in Practice
CSS17: Atlanta - The AWS Shared Responsibility Model in Practice
 
AWS Workloads on AWS
AWS Workloads on AWSAWS Workloads on AWS
AWS Workloads on AWS
 
AWS Training Institute in Gurgaon.pptx
AWS Training Institute in Gurgaon.pptxAWS Training Institute in Gurgaon.pptx
AWS Training Institute in Gurgaon.pptx
 
Innovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you startInnovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you start
 
Fundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWSFundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWS
 
Aws training in chandigarh
Aws training in chandigarhAws training in chandigarh
Aws training in chandigarh
 
AWS Webcast - Understanding the AWS Security Model
AWS Webcast - Understanding the AWS Security ModelAWS Webcast - Understanding the AWS Security Model
AWS Webcast - Understanding the AWS Security Model
 
Serverless Architectures on AWS - Pop-up Loft Tel Aviv
Serverless Architectures on AWS - Pop-up Loft Tel AvivServerless Architectures on AWS - Pop-up Loft Tel Aviv
Serverless Architectures on AWS - Pop-up Loft Tel Aviv
 
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
 
Benefits of Cloud Computing
Benefits of Cloud ComputingBenefits of Cloud Computing
Benefits of Cloud Computing
 
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
 
re:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loftre:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loft
 
AWS re:Invent 2016: State of the Union: Containers (CON316)
AWS re:Invent 2016: State of the Union:  Containers (CON316)AWS re:Invent 2016: State of the Union:  Containers (CON316)
AWS re:Invent 2016: State of the Union: Containers (CON316)
 
Cloud is the New Normal, So How Do I Get Started? - Business
Cloud is the New Normal, So How Do I Get Started? - BusinessCloud is the New Normal, So How Do I Get Started? - Business
Cloud is the New Normal, So How Do I Get Started? - Business
 
Career Benefits of AWS Certifications.pptx
Career Benefits of AWS Certifications.pptxCareer Benefits of AWS Certifications.pptx
Career Benefits of AWS Certifications.pptx
 

Recently uploaded

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Recently uploaded (20)

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

AWS Dev Tips: Learn from the experts

  • 1. AWS Dev Tips: Learn from the experts LEARN FROM LEADERS. Ossama Ghanem Senior Tech Lead + Trainer PhoenixDX Stuart Harris Software Development Lead Kiandra IT Jaques Van der Merwe Senior Solutions Architect PhoenixDX Raphael Ranieri Tech Lead + MVP PhoenixDX
  • 2. 2 Order of events 6:05 PM Welcome & Introduction 6:10 PM Dev Tips (15 mins each) AWS Overview by Jaques Van der Merwe AWS Use Case by Ossama Ghanem Streaming video from AWS S3 by Stuart Harris AWS Enablement & Certifications by Raphael Ranieri 7:20 PM Kahoot!
  • 3. AWS Overview 3 3 Jaques Van der Merwe Senior Solutions Architect PhoenixDX
  • 4. 4 What is the extent of the relationship? ● On AWS cloud since 2008 ● Signed an Strategic Collaboration Agreement (SCA) in 2020 ● Newest OutSystems ODC platform is natively built on AWS ● OutSystems has won Partner of the Year in AWS for ASEAN region ● OutSystems has a path for customers using legacy systems from on-premise legacy (SAP ECC, AS/400, Lotus Notes, etc.) to AWS cloud OutSystems and AWS together
  • 5. 5 The unique value proposition to customers ● OutSystems Helps Extend/Refactor/Re-Build Core Systems ● Maximise Talent Pool ● Quicken Innovation Why it matters
  • 6. 6 These AWS services are available in the Forge today. AWS in the Forge Textract Lex Polly Translate Transcribe SQS S3 Glacier Kinesis SNS
  • 7. Delivering a Facial Recognition Solution in OutSystems 7 Ossama Ghanem Senior Tech Lead + Trainer PhoenixDX
  • 8. 8 A form of biometric security which can confirm an individual’s identity using their face. Why should you consider this technology? ● Extremely accurate face-based user verification ● Elevates user experience ● Facial recognition technology is becoming way more accessible What is Facial Recognition?
  • 9. 9 Objective Increase the level of certainty of who is performing security-based activities by improving the user identification and verification process. Solution ● Introduction of Facial Recognition on shift check in & check out ● Sub 1.5 second comparison with 99.2% accuracy rate ● Integration with existing exception monitoring mechanisms Currently running over 75,000 verifications a month BOSS Time & Attendance
  • 11. 11 The AWS Toolkit Amazon S3 Amazon Rekognition AWS Lambda Amazon RDS Amazon Cloudwatch Amazon API Gateway A compute service that lets you run code without provisioning or managing servers. Provides highly accurate facial analysis, face comparison, and face search capabilities. An object storage service that offers scalability, data availability, security, and performance. A service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs at any scale. A collection of managed services that makes it simple to set up, operate, and scale databases in the cloud. A monitoring service that provides data and actionable insights for AWS, hybrid, and on-premises applications and infrastructure resources.
  • 13. Video Streaming via AWS S3 13 Stuart Harris Software Development Lead Kiandra IT
  • 14. Video Streaming via AWS S3 ● Why stream video? ● Solution overview ● Video playback ● Configure your buckets ● Use the API ● Upload
  • 15. Why stream video? 15 The Scenario ● Job applicants upload videos ● Videos are only available to intended recipients ● The first frame is displayed before playback ● Playback can start immediately
  • 16. 16 Solution Options Static videos ● OutSystems resources ● Poor app performance 1 Public videos ● Youtube, etc ● Cannot restrict access 2 AWS S3 ● Can restrict access 3
  • 17. Solution Overview 17 Web App OutSystems App AWS_EXT AWS S3 API Upload Playback Video URL Video URL Upload Convert
  • 18. Video Playback 18 ● Video player control ● Temporary URL ● Caching the URL ● AWS CORS configuration ● Consider using a CDN (we didn’t need one) ● Transcoding with MediaConvert
  • 20. AWS S3 Configuration 20 For each environment ● Create API user accounts ● Record “secret” and “access” keys ● Access type “Programmatic access - with an access key” ● Create S3 buckets (in the correct AWS region)
  • 21. S3 Bucket Policy 21 ● Ensure bucket public access is off (the default) ● Give access to the API user with a bucket policy "Statement": [ { "Sid": "Stmt999999999999", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::99999999999:user/myproj-dev-api" }, "Action": "s3:*", "Resource": "arn:aws:s3:::myproj-dev/*" } ] …
  • 22. CORS Configuration 22 [ { "AllowedHeaders": [ … ], "AllowedMethods": [ "GET" ], "AllowedOrigins": [ "https://YOUR_DOMAIN.com" ], "ExposeHeaders": [ … ], "MaxAgeSeconds": 3000 } ] ● Set “Allowed Origins” to your application URL
  • 24. Connecting to AWS S3 24 ● AWS S3 API ● To connect, you will need: ○ AWS Access Key ○ AWS Secret Key ○ AWS Region Name ○ AWS Bucket Name
  • 25. Get Temporary URL 25 ● AmazonS3Client.GetPreSignedURL Expires = DateTime.UtcNow.AddMinutes(durationMins) ● Cached server action ● Cache time should be less than the URL timeout
  • 27. Uploading files 27 Upload the whole file with ● Store file metadata ● TransferUtilityUploadRequest.Upload ● Generate the File “Key” (Not the filename!) ● Create a pseudo path with <ENTITY>/<ID>/<KEY> eg CUSTOMER/123/abcd-1234-cbad.mpg
  • 28. Uploading large files 28 Upload in chunks ● AmazonS3Client.InitiateMultipartUpload ● AmazonS3Client.UploadPart ● AmazonS3Client.CompleteMultipartUpload ● Custom client-side upload widget to chunk the file
  • 29. Video Streaming via AWS S3 Questions?
  • 30. AWS Enablement & Certifications 30 Raphael Ranieri Tech Lead + MVP PhoenixDX
  • 31. “Handled in AWS” “Handled in AWS” “Handled in AWS” … The AWS Iceberg “Built in AWS Lambda” “Stored in AWS S3” “Hosted on AWS EC2” … 31
  • 32. Why get certified? ● Over 200 services ● Industry standard ● Market visibility ● Getting ready for containerisation of OutSystems in ODC ● Better understanding of end-to-end accelerator implementation https://www.outsystems.com/aws-cloud-accelerators/ 32
  • 34. The AWS Certified Cloud Practitioner (CCP) is the easiest Amazon Web Services certification. It’s a cloud beginner-friendly certification that covers the basics of AWS and the cloud and requires no technical experience as a prerequisite. Though, unless you have some experience with AWS, you’ll still need to study to ace it. (It’s not that easy.) It covers around 56 AWS services, almost 25% of the AWS Universe. It’s probably for you if: You need to know foundational cloud concepts — like what is cloud, what is cloud migration, and how does AWS works at a high level — but won’t be getting your hands dirty with implementation. AWS Cloud Practitioner 34 ● Prerequisites: None ● Recommended Experience: 6 months of AWS and industry knowledge ● Skills covered: ○ Basic AWS architectural foundations ○ Key AWS services ○ AWS security and compliance
  • 35. AWS Solution Architect The AWS Certified Solutions Architect – Associate certification gives you a broad overview of AWS, and forms a valuable foundation on which you can build everything else you’ll learn moving forward. There’s a reason it’s been the #1 cloud certification for years running. The CSA – Associate certification focuses on the core AWS services, like Identity and Access Management (IAM), Virtual Private Cloud (VPC), S3, and EC2. Studying these core services will give you a good understanding of how AWS approaches security, networking, data storage, and compute capability. It’s probably for you if: If you’re going to be working in AWS in any hands-on capacity, the Associate-level certifications should mark the point where your journey truly begins. The AWS Cloud Practitioner provides a solid conceptual footing, but the AWS Associate-level certifications are where the rubber really meets the road in terms of day-to-day implementation. 35 ● Recommended Experience: One year of experience working in AWS to solve problems and implement solutions. ● Skills covered: ○ How AWS-based applications work ○ Building secure applications on AWS platform ○ Deploying hybrid AWS systems ○ Hands-on AWS application design ○ AWS application development ○ Security in AWS environments
  • 37. 37 Join the Kahoot game Join at www.kahoot.it or with the Kahoot! app Pin # in chat… WINNER please email margaret@phoenix-dx.com
  • 38. 38 Prize = Awesome Swag WINNER please email margaret@phoenix-dx.com