15 MINUTES
TECHNOLOGY CATCH-UP
Amr Salah
Middleware & Cloud Expert
AMR SALAH
MIDDLEWARE & CLOUD EXPERT
• Computer Science, Mansoura University 2009 (CS)
• 8+ years of experience in Middleware technologies
• Middleware & Cloud Expert
• Worked for (EG: Sumerge, Asset, Giza Systems, Egabi, SG: Pactera, NZ: Deloitte)
• My Clients: Govt (SFD – Saudi, TEData – EG, CIB – EG, MOH – SG, etc.)
• Certificates
• Oracle SOA/ADF/BPM
• AWS Solution Architect
• Professional Scrum Master
• Mulesoft Developer
• More of experience in Security, Full stack development & CI/CD
People burn not because they do the same thing
everyday, but because they forget WHY they do
the same thing everyday!
SOFTWARE ENGINEERING PROCESSPost Questions
http://sli.do - #T182
#Agile – Ask your question!
WE ALL ARE
SOFTWARE
ENGINEERS
SOFTWARE ENGINEERING PROCESS
Software Engineering
is the application of engineering to
the development of software in a
systematic method!
Integration & Microservices
Agile Method
Frameworks, Scrum & Roles
Cloud
Platforms, Services & Vendors
Security
Types, Policies & importance
CryptoCurrency
Blockchain, Trading
Agile Method
Frameworks, Scrum & Roles
SOFTWARE ENGINEERING PROCESS
WATERFALL MODEL
SOFTWARE ENGINEERING PROCESS
AGILE - WHY
• Individuals and Interactions over processes and tools
• Working Software over comprehensive documentation
• Customer Collaboration over contract negotiation
• Responding to Change over following a plan
AGILE
• Agile is a time boxed, iterative approach to software delivery that builds software
incrementally from the start of the project, instead of trying to deliver it all at once
near the end.
12
AGILE FRAMEWORKS
13
SOFTWARE ENGINEERING PROCESS
Standard Model- Roles
Developer Tester Leader System Admin
Security Engineer Support Network Admin Business Analyst
Project Manager
SOFTWARE ENGINEERING PROCESS
SCRUM Model- Roles
SCRUM Model
SCRUM Model
• Commitment: Team members individually commit to achieving their team goals,
each and every sprint.
• Courage: Team members know they have the courage to work through conflict
and challenges together so that they can do the right thing.
• Focus: Team members focus exclusively on their team goals and the sprint
backlog; there should be no work done other than through their backlog.
• Openness: Team members and their stakeholders agree to be transparent about
their work and any challenges they face.
• Respect: Team members respect each other to be technically capable and to work
with good intent.
SOFTWARE ENGINEERING PROCESS
SCRUM
• Commitment: Team members individually commit to achieving their team goals,
each and every sprint.
• Courage: Team members know they have the courage to work through conflict and
challenges together so that they can do the right thing.
• Focus: Team members focus exclusively on their team goals and the sprint backlog;
there should be no work done other than through their backlog.
• Openness: Team members and their stakeholders agree to be transparent about
their work and any challenges they face.
• Respect: Team members respect each other to be technically capable and to work
with good intent.
AGILE - SCRUM
20
21
22
23
LIVE AGILE
Tools ( e.g. Attlasian – BitBucket, JIRA, Confluence, etc. )
Programming Patterns/Architecture (e.g. APIs & Microservices, Mulesoft, etc.)
DevOps / CI/CD (e.g. Jenkins, CHEF, Puppet, Code Commit, Code Deploy, etc.)
LIVE AGILE
Product Owner
Scrum Master
Development team
AGILE
QUESTIONS?
http://sli.do - #T182
Integrations
& Microservices
INTEGRATIONIntegration: is the process of integrating.
Jokes APIs:
1- Get Random Joke – Call Jokes APIs
2- Translate Joke – Call google translator APIs
3- Send Joke to phone – Call SMS APIs
WEBSERVICE
Webservice: is any piece of software that makes itself available
over the internet and uses a standardized XML messaging system.
XML is used to encode all communications to a web service.
For example, a client invokes a web service by sending an XML
message, then waits for a corresponding XML response.
As all communication is in XML, web services are not tied to any one
operating system or programming language--Java can talk with
Perl; Windows applications can talk with Unix applications..
APIs
SOAPSOAP: Simple Object Access Protocol.
RESTREST: Representational State Transfer
RESTREST: Representational State Transfer
Sync vs Async
Purchasing a product SMS Notify
RESTREST: Representational State Transfer
Client : {
Name: Client_1
Title: Mr.
Domain: Technology
Employees: [
Employee:{
EmpName: Emp_1
EmpTitle: SW Engineer
},
Employee: {
EmpName: Emp_2
EmpTitle: Security Engineer
}
]
}
http://fci/clients/100
http://fci/clients/100/employees
http://fci/clients/100/employees/102
INTEGRATIONIntegration: is the process of integrating.
APPLICATION INTEGRATION
• Application Integration: is the sharing of processes and data among different
applications in an enterprise.
• http://localhost:8000/fci/users
• Tools
• Oracle SOA/OSB
• Mulesoft
• Oracle Api Platform
• Integration (CI/CD – Jenkins, GIT, etc.)
DATA INTEGRATION
• Data Integration: involves combining data residing different sources and providing
users with a unified view of them.
DATA INTEGRATION
• Data Integration: involves combining data residing different sources and providing
users with a unified view of them.
• ETL (Extract, Transform Load) concept
DATA TRANSFORMATION (
XQUERY,DATAWEAVE, XSLT)
DATA INTEGRATION
• WHY?
• Merging two Bioinformatics Labs
• Data Science Migration
• Financial market forecasting
• Tools
• Oracle Data Integrator (ODI)
• SQL Server Integration Services (SSIS)
• MuleSoft (Data Weave)
• IBM InfoSphere Information Server
• OSB (Xquery/XSLT)
• Use case
APPLICATION INTEGRATION
• Application Integration: is the sharing of processes and data among different
applications in an enterprise.
• http://localhost:8000/fci/users
• Tools
• Oracle SOA/OSB
• Mulesoft
• Oracle Api Platform
• Integration (CI/CD – Jenkins, GIT, etc.)
MONOLITHIC ARCHITECTURE
MICROSERVICES
• MicroServices: an approach to application development in which a large application is built as a
suite of modular services. Each module supports a specific business goal and uses a simple,
well-defined interface to communicate with other sets of services.
Versioning
Production Support
Unified platform/Lang.
Cost against Infra.
(DB, LB, Machines)
APIS
• Application Programming Interface (API) is a set of subroutine definitions, protocols, and
tools for building application software.
• APIs like any application has to be managed and monitored.
• http://localhost:8000/fci/users
• API Deployments
• On-Premises
• Data Centers
• Containers
• Serverless
• Tools
• Mulesoft
• Node JS / Express / Total
• Oracle SOA/OSB
MICROSERVICES
• MicroServices: an approach to application development in which a large application is built as a
suite of modular services. Each module supports a specific business goal and uses a simple,
well-defined interface to communicate with other sets of services.
Cost over Network
Multiple Deployment
Calling failed service
MICROSERVICES
• MicroServices: an approach to application development in which a large application is built as a
suite of modular services. Each module supports a specific business goal and uses a simple,
well-defined interface to communicate with other sets of services.
Facebook application style
RAM Consuming
Scrum Projects
MICROSERVICES
• MicroServices: an approach to application development in which a large application is built as a
suite of modular services. Each module supports a specific business goal and uses a simple,
well-defined interface to communicate with other sets of services.
MICROSERVICES
• MicroServices: an approach to application development in which a large application is built as a
suite of modular services. Each module supports a specific business goal and uses a simple,
well-defined interface to communicate with other sets of services.
MICROSERVICES TEAM
Developers
SysOps/DevOps
Cloud Architects
INTEGRATION & MICROSERVICES
QUESTIONS?
http://sli.do - #T182
Cloud Computing
Platforms, Services & Vendors
CLOUD TECHNOLOGY
WHAT IS CLOUD?
CLOUD TECHNOLOGY
IAAS/SAAS/PAAS
CLOUDCLOUD TECHNOLOGY
VENDORS & MARKET SHARE
CLOUDAMAZON WEB SERVICES
AWS REGIONS & AVAILABILITY ZONES
CLOUDAMAZON WEB SERVICES
AWS SERVICES
CLOUDAMAZON WEB SERVICES
AVAILABLE SERVICES PER REGION
CLOUDAMAZON WEB SERVICES
AWS SERVICES
CLOUDAMAZON WEB SERVICES
AWS SERVICES
CLOUDAMAZON WEB SERVICES
AWS SERVICES
CLOUDAMAZON WEB SERVICES
AWS SERVICES
CLOUDAMAZON WEB SERVICES
AWS SERVICES
COST (Pay-As-You-Go)
- Storage Type/Size
- Data transfer
PERFORMANCE
- Instance Arch. Defines need
- Serverless
CLOUD TEAM
Cloud Architect
Developers (Styles)
Cloud Security
Specialist
Cloud Engineer
AMAZON WEB SERVICES
QUESTIONS?
http://sli.do - #T182
Security
Hardware, Software, Data
SECURITY
• Know as cyber security or IT security, is the protection of computer systems from
the theft and damage to their hardware, software or information, as well as
from disruption or misdirection of the services they provide.
It’s all about DATA
DAMAGE BREACHCorruption
SECURITY
• Know as cyber security or IT security, is the protection of computer systems from
the theft and damage to their hardware, software or information, as well as
from disruption or misdirection of the services they provide.
Hardware Security
Software Security
Data Security
DATA SECURITY - DATA
DATA SECURITY - DATA
• Data is distinct pieces of information, usually formatted in a special way. All
software is divided into two general categories: data and programs. Programs are
collections of instructions for manipulating data.
• Data can exist in a variety of forms
WHY DATA IS IMPORTANT
WHY DATA IS IMPORTANT
DATA SECURITY
• protecting digital data, such as those in a database, from destructive forces and
from the unwanted actions of unauthorized users, such as a cyberattack or a data
breach.
DATA PROTECTION
• Disk encryption
• Software-based security solutions encrypt the data to protect it from theft.
However, a malicious program or a hacker could corrupt the data in order to make
it unrecoverable, making the system unusable.
• Hardware-based security solutions can prevent read and write access to data and
hence offer very strong protection against tampering and unauthorized access.
(e.g. MFA)
• Backups
• Data masking
• Data erasure
• Data Encryption (Server/Client Side)
DATA PROTECTION
DISK ENCRYPTION
• Disk encryption: is a technology which protects information by converting it into
unreadable code that cannot be deciphered easily by unauthorized people. Disk
encryption uses disk encryption software or hardware to encrypt every bit of data that
goes on a disk or disk volume. It is used to prevent unauthorized access to data
storage.
DATA PROTECTION
BACKUPS
• Backup: the process of backing up, refers to the copying and archiving of
computer data so it may be used to restore the original after a data loss event. The verb
form is to back up in two words, whereas the noun is backup.
DATA PROTECTION
DATA MASKING
• Data masking: is the process of hiding original data with random characters or data.
DATA PROTECTION
DATA ERASURE
• Data erasure: (data clearing or data wiping) is a software-based method of overwriting
the data that aims to completely destroy all electronic data residing on a hard disk drive or
other digital media by using zeros and ones to overwrite data onto all sectors of the device
DATA PROTECTION
DATA ENCRYPTION
• Server Side Encryption
• HTTP/HTTPS – ex.sni.
• End-to-End
Client Side Encryption
Encrypt-Decrypt
Symmetric Private key
HSM
KMS
SYMMETRIC PRIVATE KEY
Key: *.pem
HSM/KMS
OPTIONAL
Key: *.pem
DATA SECURITY
QUESTIONS?
http://sli.do - #T182
SOFTWARE SECURITY
Computer security software or cybersecurity software is any computer program designed to enhance
information security. The defense of computers against intrusion and unauthorized use of resources is called
computer security. Similarly, the defense of computer networks is called network security.
A MALICIOUS ATTACK
• A malicious attack is an attempt to forcefully abuse or take advantage of
someone's computer, whether through computer viruses, social engineering,
phishing, or other types of social engineering.
Email - Web Content – Legitimate/reward Sites - File Downloads
• Malware (Adware, Spyware, Trojan Horse, Crimeware, Viruses, Worms)
• Social Engineering (Phishing, Baiting, Spam)
EMAIL PHISHING
is the attempt to obtain sensitive information such as usernames, passwords,
and credit card details (and money), often for malicious reasons, by disguising as a
trustworthy entity in an electronic communication.
VULNERABILITIES
By NIST
SOFTWARE SECURITY
QUESTIONS?
http://sli.do - #T182
HARDWARE SECURITY
Thieves HW Damage
1. Hardware Protection: Cloud IAAS has to be protected from DAMAGE. security solutions can prevent
read and write access to data and hence offer very strong protection against tampering and
unauthorized access. (e.g. MFA).
Data Corruption/Loss
HARDWARE SECURITY
2. Hardware Security Module (HSM): is a physical computing device that safeguards and
manages digital keys for strong authentication and provides cryptoprocessing.
These modules traditionally come in the form of a plug-in card or an external device that attaches
directly to a computer or network server.
• intrusion-resistant, tamper-evident, FIPS Validated
• Self destruction
• AWS CloudHSM
• Microsoft KeyVault
• Google Cloud Key management
SECURITY POLICIES
COMPLIANCES
Security Policies: is a definition of what it means to be secure for a system, organization or other entity.
For an organization, it addresses the constraints on behaviour of its members as well as constraints imposed
on adversaries by mechanisms such as doors, locks, keys and walls.
Health Insurance Portability
and Accountability Act
Payment Card Industry Data
Security Standard
SECURITY POLICIES
COMPLIANCES
PCI DSS (Payment Card Industry Data Security Standard)
• Firewall at each internet Connection
• Components protected from security vulnerabilities
• Review Logs & Security Events
• Protect Card Holder Data
• Retain Audit history for at least 1 Year
• Security Group, NACL
• etc.
SECURITY- WHAT ELSE?
SECURITY
Security Engineer
• Network Security Engineer
• Information Assurance Engineer
• Information Security Engineer
• Information Systems Security Engineer
Digital Forensics
SECURITY
QUESTIONS?
http://sli.do - #T182
Cryptocurrency & Blockchain
CURRENCY
DIGITAL CURRENCY
Centralized Centralized Issues
• Cyprus Banks
• Third Party is an Owner
• Banks
• Facebook, Google
• Uber, Careem
• Single Point of failure
• Fake Signature
• Hacked data (Stolen, Edited)
• Double Spend Problem
CURRENCY
CURRENCY
• Programmed using C++. – [Electronic]
• Set of transactions recorded into public database & Verified by Miners. –
[Decentralized]
• Ownership is verified by Keys. [Secure]
• Transactions are stored into Block. – [Blockchain, Public Ledger]
• Records are stored on User’s Side. – [P2P – Peer-to-Peer]
• Everyone can see other’s Bitcoins Masked by VK(PK)
• Bitcoin equals 17750 USD now.
• There are 700 Altcoins.
DIGITAL CURRENCY
Centralized Cryptocurrencies
CRYPTOCURRENCIES
= 10-17740 $
= 1515 $
= 750 $
BTC
BCC/BCH
ET
CRYPTOCURRENCY WALLET
• Mobile, Desktop, Web.
• Cold Wallet vs Hot Wallet.
• Deposit, Withdraw, Buy & Sell.
INVESTOR VS TRADER
How to can you make
Money from
Cryptocurrency?
SPEND BITCOIN
Out of 75 places on shopify.co.nz
Technical View
CRYPTOCURRENCY
• Satoshi Nakamoto, the unknown inventor of Bitcoin, the first and still most important
cryptocurrency, never intended to invent a currency.
“A Peer-to-Peer Electronic Cash
System.“
Peer-to-peer file sharing is the distribution and sharing of digital media using peer-
to-peer (P2P) networking technology. P2P file sharing allows users to access media
files such as books, music, movies, and games using a P2P software program that
searches for other connected computers on a P2P network to locate the desired
content
CRYPTOCURRENCY
• Satoshi Nakamoto, the unknown inventor of Bitcoin, the first and still most important
cryptocurrency, never intended to invent a currency.
• Decentralized, No Central Authority.
• so anyone with access to the Internet can transfer money to anybody anywhere in the
world.
• Limited entries in a database no one can change without fulfilling specific conditions.
• Shared Ledger - Blockchain
• Encrypted using SHA 256
“Peer-to-peer Decentralised Electronic Cash System.“
CENTRALIZED DIGITAL CURRENCY
Double-spending is a potential flaw in a digital
cash scheme in which the same single digital token can
be spent more than once. This is possible because a
digital token consists of a digital file that can be duplicated
or falsified.[1]
Example:
You go to Starbucks and order a cappuccino worth $10.
You pay in cash. Now that $10 in cash is in the cash vault
of Starbucks. By all means, you simply cannot spend the
same $10 somewhere else to make another purchase.
CRUPTOCURRENCT
• Programmed using C++. – [Electronic]
• Set of transactions recorded into public database & Verified by Miners. –
[Decentralized]
• Ownership is verified by Keys. [Secure]
• Transactions are stored into Block. – [Blockchain, Public Ledger]
• Records are stored on User’s Side. – [P2P – Peer-to-Peer]
• Everyone can see other’s Bitcoins Masked by VK(PK)
• Bitcoin equals 17750 USD now.
• There are 700 Altcoins.
DECENTRALIZED
BITCOIN KEYS
BITCOIN KEYS
BITCOIN KEYS
BITCOIN MINING
Bitcoin mining is the process by which
transactions are verified and added to
the public ledger, known as the block
chain, and also the means through which
New bitcoin are released.
50 BTC half-ed each four years.
21,000,00 BTC forever!
Miners verify balance by calculating
All previous transactions for particular user.
BITCOIN KEYS
DOUBLE SPEND CONFIRMATION
Double-spending is a potential flaw in a digital cash scheme in which the same single digital token can be spent
more than once. This is possible because a digital token consists of a digital file that can be duplicated or falsified.[1]
1- Alice Purchases a product from Bob
2- Alice will create two bitcoin transactions; one that include payments
for the product or service he seeks from Bob, the other pays the same
amount to himself/herself.
3- Alice will broadcast the “A to B” transaction and then
start secretly mining the block that includes the “A to A”
payment.
Once he/she successfully mines this block, further blocks will be added to it.
4- Bob will give the service or product to Alice,
on seeing the transaction on the public ledger, whether or not the
transaction was confirmed, if he/she doesn’t wait for the confirmation
to send the products.
5- Alice can be lucky and the attack succeeds ,
6 CONFIRMATIONS
Double-spending is a potential flaw in a digital
cash scheme in which the same single digital token can
be spent more than once. This is possible because a
digital token consists of a digital file that can be duplicated
or falsified.[1]
Example:
You go to Starbucks and order a cappuccino worth $10.
You pay in cash. Now that $10 in cash is in the cash vault
of Starbucks. By all means, you simply cannot spend the
same $10 somewhere else to make another purchase.
CRYPTOCURRENCY
SHA 256
“A Peer-to-Peer Electronic Cash
System.“
BLOCKCHAIN
originally block chain,[4][5] is a continuously growing list
of records, called blocks, which are linked and secured
using cryptography.[1][6] Each block typically contains
a hash pointer as a link to a previous
block,[6] a timestamp and transaction data.[7] By design,
blockchains are inherently resistant to modification of
the data. Harvard Business Review defines it as "an
open, distributed ledger that can record transactions
between two parties efficiently and in a verifiable and
permanent way."[8] For use as a distributed ledger, a
blockchain is typically managed by a peer-to-
peer network collectively adhering to a protocol for
validating new blocks. Once recorded, the data in any
given block cannot be altered retroactively without the
alteration of all subsequent blocks, which requires
collusion of the network majority.
BLOCKCHAIN
• Public
• Private
• Consortium
BLOCKCHAIN
BLOCKCHAIN
BLOCKCHAIN
BLOCKCHAIN
APPLICATIONS
Is just a contract automates transactions
committing and rollback.
Applications:
1. Data storage (storj, beta)
2. Digital Identity (Passport, Birth cert.,
wedding cert.)
3. Smart Contracts
4. Digital Voting
5. Decentralised Notary
BLOCKCHAIN
APPLICATIONS BY EXAMPLES
Is just a contract automates transactions
committing and rollback.
Applications By Examples:
1. Pay for Cinema
2. Fund raising (full Fund vs No Fund)
3. Groceries history
4. Commission deals
5. Banks ran out of money
6. Notaries
BLOCKCHAIN
TOOLS
Blockchain Tools
1. Etheurum (Test & Real)
2. Oracle Cloud BlockChain
3. Microsoft Azure Blockchain
4. IBM Cloud Blockchain
BLOCKCHAIN
SMART CONTRACT
BLOCKCHAIN
Blockchain developer
SMART contract
developer
CRYPTOCURRENCY & BLOCKCHAIN
QUESTIONS?
http://sli.do - #T182
KEEP IN TOUCHKeep in touch
Join slack.com & subscribe to our channel (#fciteam)
https://dirtyhandsws.slack.com/
Send your email to Amr.salah.2010@gmail.com
to add you to the list with the following pattern:
Subject: #fciteam-Please Add Me
KEEP IN TOUCH
• How Many ones joined FCI because of Score ?
• … Degree ?
• … IT career & Money?
• … Passionate?!
Profit = Passion + Purpose
Wrong Place VS Wrong Passion
Purpose
Vision
Hope
Confidence
Trust
• What are my abilities ?
• Can I be whatever I want?
• Can I love what I do?
What are you
passionate
about?
How to Identify My Career?
• Read more about Left/Right Brain Specs.
• Right/Left Brain assessments
• Strength vs Weakness
DATABASE
SOFTWARE ENGINEER
OPERATING SYSTEM
DISTRIBUTED SYSTEM
IMAGE RECOGNITION
PROGRAMMING
CLOUD
AI IOT
NLP (Semantic, Speech Recognition)
ASSEMBLY & Machine Learning
Expert Systems
PATTERN RECOGNITION
DATA SCIENCE
DATA STRUCTURE
ALGORITHMS
Knowledge
Overwhelming
What Companies are looking for ?
Well Educated
Confidence
Clear Vision
High Score
Courses & Certificates
Blogs & Events
Publications & WP
One-Paper CV
PASSION
BEST PRACTICE
• Study using best practices
• Develop using best practices
• Minding best practice
• Practice for the best practice
Speed Learning Tech., Mind Mapping
Design Pattern, DS, Algorithms
The Best Practice Of the B.P is to Focus - Mindful
How to reach the best Practice.
PASSION MATTERS
QUESTIONS?
http://sli.do - #T182
KEEP IN TOUCHKeep in touch
Join slack.com & subscribe to our channel (#fciteam)
https://dirtyhandsws.slack.com/
Send your email to Amr.salah.2010@gmail.com
to add you to the list with the following pattern:
Subject: #fciteam-Please Add Me

Session

  • 1.
    15 MINUTES TECHNOLOGY CATCH-UP AmrSalah Middleware & Cloud Expert
  • 2.
    AMR SALAH MIDDLEWARE &CLOUD EXPERT • Computer Science, Mansoura University 2009 (CS) • 8+ years of experience in Middleware technologies • Middleware & Cloud Expert • Worked for (EG: Sumerge, Asset, Giza Systems, Egabi, SG: Pactera, NZ: Deloitte) • My Clients: Govt (SFD – Saudi, TEData – EG, CIB – EG, MOH – SG, etc.) • Certificates • Oracle SOA/ADF/BPM • AWS Solution Architect • Professional Scrum Master • Mulesoft Developer • More of experience in Security, Full stack development & CI/CD
  • 3.
    People burn notbecause they do the same thing everyday, but because they forget WHY they do the same thing everyday!
  • 4.
    SOFTWARE ENGINEERING PROCESSPostQuestions http://sli.do - #T182 #Agile – Ask your question!
  • 6.
  • 7.
    SOFTWARE ENGINEERING PROCESS SoftwareEngineering is the application of engineering to the development of software in a systematic method!
  • 8.
    Integration & Microservices AgileMethod Frameworks, Scrum & Roles Cloud Platforms, Services & Vendors Security Types, Policies & importance CryptoCurrency Blockchain, Trading
  • 9.
  • 10.
  • 11.
    SOFTWARE ENGINEERING PROCESS AGILE- WHY • Individuals and Interactions over processes and tools • Working Software over comprehensive documentation • Customer Collaboration over contract negotiation • Responding to Change over following a plan
  • 12.
    AGILE • Agile isa time boxed, iterative approach to software delivery that builds software incrementally from the start of the project, instead of trying to deliver it all at once near the end. 12
  • 13.
  • 14.
    SOFTWARE ENGINEERING PROCESS StandardModel- Roles Developer Tester Leader System Admin Security Engineer Support Network Admin Business Analyst Project Manager
  • 15.
  • 16.
  • 17.
    SCRUM Model • Commitment:Team members individually commit to achieving their team goals, each and every sprint. • Courage: Team members know they have the courage to work through conflict and challenges together so that they can do the right thing. • Focus: Team members focus exclusively on their team goals and the sprint backlog; there should be no work done other than through their backlog. • Openness: Team members and their stakeholders agree to be transparent about their work and any challenges they face. • Respect: Team members respect each other to be technically capable and to work with good intent.
  • 18.
    SOFTWARE ENGINEERING PROCESS SCRUM •Commitment: Team members individually commit to achieving their team goals, each and every sprint. • Courage: Team members know they have the courage to work through conflict and challenges together so that they can do the right thing. • Focus: Team members focus exclusively on their team goals and the sprint backlog; there should be no work done other than through their backlog. • Openness: Team members and their stakeholders agree to be transparent about their work and any challenges they face. • Respect: Team members respect each other to be technically capable and to work with good intent.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
    LIVE AGILE Tools (e.g. Attlasian – BitBucket, JIRA, Confluence, etc. ) Programming Patterns/Architecture (e.g. APIs & Microservices, Mulesoft, etc.) DevOps / CI/CD (e.g. Jenkins, CHEF, Puppet, Code Commit, Code Deploy, etc.)
  • 24.
    LIVE AGILE Product Owner ScrumMaster Development team
  • 25.
  • 26.
  • 27.
    INTEGRATIONIntegration: is theprocess of integrating. Jokes APIs: 1- Get Random Joke – Call Jokes APIs 2- Translate Joke – Call google translator APIs 3- Send Joke to phone – Call SMS APIs
  • 28.
    WEBSERVICE Webservice: is anypiece of software that makes itself available over the internet and uses a standardized XML messaging system. XML is used to encode all communications to a web service. For example, a client invokes a web service by sending an XML message, then waits for a corresponding XML response. As all communication is in XML, web services are not tied to any one operating system or programming language--Java can talk with Perl; Windows applications can talk with Unix applications.. APIs
  • 29.
    SOAPSOAP: Simple ObjectAccess Protocol.
  • 30.
  • 31.
  • 32.
    Sync vs Async Purchasinga product SMS Notify
  • 33.
    RESTREST: Representational StateTransfer Client : { Name: Client_1 Title: Mr. Domain: Technology Employees: [ Employee:{ EmpName: Emp_1 EmpTitle: SW Engineer }, Employee: { EmpName: Emp_2 EmpTitle: Security Engineer } ] } http://fci/clients/100 http://fci/clients/100/employees http://fci/clients/100/employees/102
  • 35.
    INTEGRATIONIntegration: is theprocess of integrating.
  • 36.
    APPLICATION INTEGRATION • ApplicationIntegration: is the sharing of processes and data among different applications in an enterprise. • http://localhost:8000/fci/users • Tools • Oracle SOA/OSB • Mulesoft • Oracle Api Platform • Integration (CI/CD – Jenkins, GIT, etc.)
  • 37.
    DATA INTEGRATION • DataIntegration: involves combining data residing different sources and providing users with a unified view of them.
  • 38.
    DATA INTEGRATION • DataIntegration: involves combining data residing different sources and providing users with a unified view of them. • ETL (Extract, Transform Load) concept
  • 39.
  • 40.
    DATA INTEGRATION • WHY? •Merging two Bioinformatics Labs • Data Science Migration • Financial market forecasting • Tools • Oracle Data Integrator (ODI) • SQL Server Integration Services (SSIS) • MuleSoft (Data Weave) • IBM InfoSphere Information Server • OSB (Xquery/XSLT) • Use case
  • 41.
    APPLICATION INTEGRATION • ApplicationIntegration: is the sharing of processes and data among different applications in an enterprise. • http://localhost:8000/fci/users • Tools • Oracle SOA/OSB • Mulesoft • Oracle Api Platform • Integration (CI/CD – Jenkins, GIT, etc.)
  • 42.
  • 43.
    MICROSERVICES • MicroServices: anapproach to application development in which a large application is built as a suite of modular services. Each module supports a specific business goal and uses a simple, well-defined interface to communicate with other sets of services. Versioning Production Support Unified platform/Lang. Cost against Infra. (DB, LB, Machines)
  • 44.
    APIS • Application ProgrammingInterface (API) is a set of subroutine definitions, protocols, and tools for building application software. • APIs like any application has to be managed and monitored. • http://localhost:8000/fci/users • API Deployments • On-Premises • Data Centers • Containers • Serverless • Tools • Mulesoft • Node JS / Express / Total • Oracle SOA/OSB
  • 45.
    MICROSERVICES • MicroServices: anapproach to application development in which a large application is built as a suite of modular services. Each module supports a specific business goal and uses a simple, well-defined interface to communicate with other sets of services. Cost over Network Multiple Deployment Calling failed service
  • 46.
    MICROSERVICES • MicroServices: anapproach to application development in which a large application is built as a suite of modular services. Each module supports a specific business goal and uses a simple, well-defined interface to communicate with other sets of services. Facebook application style RAM Consuming Scrum Projects
  • 47.
    MICROSERVICES • MicroServices: anapproach to application development in which a large application is built as a suite of modular services. Each module supports a specific business goal and uses a simple, well-defined interface to communicate with other sets of services.
  • 48.
    MICROSERVICES • MicroServices: anapproach to application development in which a large application is built as a suite of modular services. Each module supports a specific business goal and uses a simple, well-defined interface to communicate with other sets of services.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
    CLOUDAMAZON WEB SERVICES AWSREGIONS & AVAILABILITY ZONES
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
    CLOUDAMAZON WEB SERVICES AWSSERVICES COST (Pay-As-You-Go) - Storage Type/Size - Data transfer PERFORMANCE - Instance Arch. Defines need - Serverless
  • 63.
    CLOUD TEAM Cloud Architect Developers(Styles) Cloud Security Specialist Cloud Engineer
  • 64.
  • 65.
  • 66.
    SECURITY • Know ascyber security or IT security, is the protection of computer systems from the theft and damage to their hardware, software or information, as well as from disruption or misdirection of the services they provide. It’s all about DATA DAMAGE BREACHCorruption
  • 67.
    SECURITY • Know ascyber security or IT security, is the protection of computer systems from the theft and damage to their hardware, software or information, as well as from disruption or misdirection of the services they provide. Hardware Security Software Security Data Security
  • 68.
  • 69.
    DATA SECURITY -DATA • Data is distinct pieces of information, usually formatted in a special way. All software is divided into two general categories: data and programs. Programs are collections of instructions for manipulating data. • Data can exist in a variety of forms
  • 70.
    WHY DATA ISIMPORTANT
  • 71.
    WHY DATA ISIMPORTANT
  • 72.
    DATA SECURITY • protectingdigital data, such as those in a database, from destructive forces and from the unwanted actions of unauthorized users, such as a cyberattack or a data breach.
  • 73.
    DATA PROTECTION • Diskencryption • Software-based security solutions encrypt the data to protect it from theft. However, a malicious program or a hacker could corrupt the data in order to make it unrecoverable, making the system unusable. • Hardware-based security solutions can prevent read and write access to data and hence offer very strong protection against tampering and unauthorized access. (e.g. MFA) • Backups • Data masking • Data erasure • Data Encryption (Server/Client Side)
  • 74.
    DATA PROTECTION DISK ENCRYPTION •Disk encryption: is a technology which protects information by converting it into unreadable code that cannot be deciphered easily by unauthorized people. Disk encryption uses disk encryption software or hardware to encrypt every bit of data that goes on a disk or disk volume. It is used to prevent unauthorized access to data storage.
  • 75.
    DATA PROTECTION BACKUPS • Backup:the process of backing up, refers to the copying and archiving of computer data so it may be used to restore the original after a data loss event. The verb form is to back up in two words, whereas the noun is backup.
  • 76.
    DATA PROTECTION DATA MASKING •Data masking: is the process of hiding original data with random characters or data.
  • 77.
    DATA PROTECTION DATA ERASURE •Data erasure: (data clearing or data wiping) is a software-based method of overwriting the data that aims to completely destroy all electronic data residing on a hard disk drive or other digital media by using zeros and ones to overwrite data onto all sectors of the device
  • 78.
    DATA PROTECTION DATA ENCRYPTION •Server Side Encryption • HTTP/HTTPS – ex.sni. • End-to-End Client Side Encryption Encrypt-Decrypt Symmetric Private key HSM KMS
  • 79.
  • 80.
  • 81.
  • 82.
    SOFTWARE SECURITY Computer securitysoftware or cybersecurity software is any computer program designed to enhance information security. The defense of computers against intrusion and unauthorized use of resources is called computer security. Similarly, the defense of computer networks is called network security.
  • 83.
    A MALICIOUS ATTACK •A malicious attack is an attempt to forcefully abuse or take advantage of someone's computer, whether through computer viruses, social engineering, phishing, or other types of social engineering. Email - Web Content – Legitimate/reward Sites - File Downloads • Malware (Adware, Spyware, Trojan Horse, Crimeware, Viruses, Worms) • Social Engineering (Phishing, Baiting, Spam)
  • 84.
    EMAIL PHISHING is theattempt to obtain sensitive information such as usernames, passwords, and credit card details (and money), often for malicious reasons, by disguising as a trustworthy entity in an electronic communication.
  • 85.
  • 86.
  • 87.
    HARDWARE SECURITY Thieves HWDamage 1. Hardware Protection: Cloud IAAS has to be protected from DAMAGE. security solutions can prevent read and write access to data and hence offer very strong protection against tampering and unauthorized access. (e.g. MFA). Data Corruption/Loss
  • 88.
    HARDWARE SECURITY 2. HardwareSecurity Module (HSM): is a physical computing device that safeguards and manages digital keys for strong authentication and provides cryptoprocessing. These modules traditionally come in the form of a plug-in card or an external device that attaches directly to a computer or network server. • intrusion-resistant, tamper-evident, FIPS Validated • Self destruction • AWS CloudHSM • Microsoft KeyVault • Google Cloud Key management
  • 89.
    SECURITY POLICIES COMPLIANCES Security Policies:is a definition of what it means to be secure for a system, organization or other entity. For an organization, it addresses the constraints on behaviour of its members as well as constraints imposed on adversaries by mechanisms such as doors, locks, keys and walls. Health Insurance Portability and Accountability Act Payment Card Industry Data Security Standard
  • 90.
    SECURITY POLICIES COMPLIANCES PCI DSS(Payment Card Industry Data Security Standard) • Firewall at each internet Connection • Components protected from security vulnerabilities • Review Logs & Security Events • Protect Card Holder Data • Retain Audit history for at least 1 Year • Security Group, NACL • etc.
  • 91.
  • 92.
    SECURITY Security Engineer • NetworkSecurity Engineer • Information Assurance Engineer • Information Security Engineer • Information Systems Security Engineer Digital Forensics
  • 93.
  • 94.
  • 95.
  • 96.
    DIGITAL CURRENCY Centralized CentralizedIssues • Cyprus Banks • Third Party is an Owner • Banks • Facebook, Google • Uber, Careem • Single Point of failure • Fake Signature • Hacked data (Stolen, Edited) • Double Spend Problem
  • 97.
  • 98.
    CURRENCY • Programmed usingC++. – [Electronic] • Set of transactions recorded into public database & Verified by Miners. – [Decentralized] • Ownership is verified by Keys. [Secure] • Transactions are stored into Block. – [Blockchain, Public Ledger] • Records are stored on User’s Side. – [P2P – Peer-to-Peer] • Everyone can see other’s Bitcoins Masked by VK(PK) • Bitcoin equals 17750 USD now. • There are 700 Altcoins.
  • 99.
  • 100.
    CRYPTOCURRENCIES = 10-17740 $ =1515 $ = 750 $ BTC BCC/BCH ET
  • 101.
    CRYPTOCURRENCY WALLET • Mobile,Desktop, Web. • Cold Wallet vs Hot Wallet. • Deposit, Withdraw, Buy & Sell.
  • 102.
    INVESTOR VS TRADER Howto can you make Money from Cryptocurrency?
  • 103.
    SPEND BITCOIN Out of75 places on shopify.co.nz
  • 104.
  • 105.
    CRYPTOCURRENCY • Satoshi Nakamoto,the unknown inventor of Bitcoin, the first and still most important cryptocurrency, never intended to invent a currency. “A Peer-to-Peer Electronic Cash System.“ Peer-to-peer file sharing is the distribution and sharing of digital media using peer- to-peer (P2P) networking technology. P2P file sharing allows users to access media files such as books, music, movies, and games using a P2P software program that searches for other connected computers on a P2P network to locate the desired content
  • 106.
    CRYPTOCURRENCY • Satoshi Nakamoto,the unknown inventor of Bitcoin, the first and still most important cryptocurrency, never intended to invent a currency. • Decentralized, No Central Authority. • so anyone with access to the Internet can transfer money to anybody anywhere in the world. • Limited entries in a database no one can change without fulfilling specific conditions. • Shared Ledger - Blockchain • Encrypted using SHA 256 “Peer-to-peer Decentralised Electronic Cash System.“
  • 107.
    CENTRALIZED DIGITAL CURRENCY Double-spendingis a potential flaw in a digital cash scheme in which the same single digital token can be spent more than once. This is possible because a digital token consists of a digital file that can be duplicated or falsified.[1] Example: You go to Starbucks and order a cappuccino worth $10. You pay in cash. Now that $10 in cash is in the cash vault of Starbucks. By all means, you simply cannot spend the same $10 somewhere else to make another purchase.
  • 108.
    CRUPTOCURRENCT • Programmed usingC++. – [Electronic] • Set of transactions recorded into public database & Verified by Miners. – [Decentralized] • Ownership is verified by Keys. [Secure] • Transactions are stored into Block. – [Blockchain, Public Ledger] • Records are stored on User’s Side. – [P2P – Peer-to-Peer] • Everyone can see other’s Bitcoins Masked by VK(PK) • Bitcoin equals 17750 USD now. • There are 700 Altcoins.
  • 109.
  • 111.
  • 112.
  • 113.
  • 114.
    BITCOIN MINING Bitcoin miningis the process by which transactions are verified and added to the public ledger, known as the block chain, and also the means through which New bitcoin are released. 50 BTC half-ed each four years. 21,000,00 BTC forever! Miners verify balance by calculating All previous transactions for particular user.
  • 115.
  • 116.
    DOUBLE SPEND CONFIRMATION Double-spendingis a potential flaw in a digital cash scheme in which the same single digital token can be spent more than once. This is possible because a digital token consists of a digital file that can be duplicated or falsified.[1] 1- Alice Purchases a product from Bob 2- Alice will create two bitcoin transactions; one that include payments for the product or service he seeks from Bob, the other pays the same amount to himself/herself. 3- Alice will broadcast the “A to B” transaction and then start secretly mining the block that includes the “A to A” payment. Once he/she successfully mines this block, further blocks will be added to it. 4- Bob will give the service or product to Alice, on seeing the transaction on the public ledger, whether or not the transaction was confirmed, if he/she doesn’t wait for the confirmation to send the products. 5- Alice can be lucky and the attack succeeds ,
  • 117.
    6 CONFIRMATIONS Double-spending isa potential flaw in a digital cash scheme in which the same single digital token can be spent more than once. This is possible because a digital token consists of a digital file that can be duplicated or falsified.[1] Example: You go to Starbucks and order a cappuccino worth $10. You pay in cash. Now that $10 in cash is in the cash vault of Starbucks. By all means, you simply cannot spend the same $10 somewhere else to make another purchase.
  • 118.
    CRYPTOCURRENCY SHA 256 “A Peer-to-PeerElectronic Cash System.“
  • 120.
    BLOCKCHAIN originally block chain,[4][5]is a continuously growing list of records, called blocks, which are linked and secured using cryptography.[1][6] Each block typically contains a hash pointer as a link to a previous block,[6] a timestamp and transaction data.[7] By design, blockchains are inherently resistant to modification of the data. Harvard Business Review defines it as "an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way."[8] For use as a distributed ledger, a blockchain is typically managed by a peer-to- peer network collectively adhering to a protocol for validating new blocks. Once recorded, the data in any given block cannot be altered retroactively without the alteration of all subsequent blocks, which requires collusion of the network majority.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
    BLOCKCHAIN APPLICATIONS Is just acontract automates transactions committing and rollback. Applications: 1. Data storage (storj, beta) 2. Digital Identity (Passport, Birth cert., wedding cert.) 3. Smart Contracts 4. Digital Voting 5. Decentralised Notary
  • 126.
    BLOCKCHAIN APPLICATIONS BY EXAMPLES Isjust a contract automates transactions committing and rollback. Applications By Examples: 1. Pay for Cinema 2. Fund raising (full Fund vs No Fund) 3. Groceries history 4. Commission deals 5. Banks ran out of money 6. Notaries
  • 127.
    BLOCKCHAIN TOOLS Blockchain Tools 1. Etheurum(Test & Real) 2. Oracle Cloud BlockChain 3. Microsoft Azure Blockchain 4. IBM Cloud Blockchain
  • 128.
  • 129.
  • 130.
  • 131.
    KEEP IN TOUCHKeepin touch Join slack.com & subscribe to our channel (#fciteam) https://dirtyhandsws.slack.com/ Send your email to Amr.salah.2010@gmail.com to add you to the list with the following pattern: Subject: #fciteam-Please Add Me
  • 132.
  • 134.
    • How Manyones joined FCI because of Score ? • … Degree ? • … IT career & Money? • … Passionate?! Profit = Passion + Purpose
  • 135.
    Wrong Place VSWrong Passion Purpose Vision Hope Confidence Trust
  • 136.
    • What aremy abilities ? • Can I be whatever I want? • Can I love what I do? What are you passionate about?
  • 138.
    How to IdentifyMy Career? • Read more about Left/Right Brain Specs. • Right/Left Brain assessments • Strength vs Weakness
  • 139.
    DATABASE SOFTWARE ENGINEER OPERATING SYSTEM DISTRIBUTEDSYSTEM IMAGE RECOGNITION PROGRAMMING CLOUD AI IOT NLP (Semantic, Speech Recognition) ASSEMBLY & Machine Learning Expert Systems PATTERN RECOGNITION DATA SCIENCE DATA STRUCTURE ALGORITHMS
  • 141.
  • 142.
    What Companies arelooking for ? Well Educated Confidence Clear Vision High Score Courses & Certificates Blogs & Events Publications & WP One-Paper CV PASSION
  • 143.
    BEST PRACTICE • Studyusing best practices • Develop using best practices • Minding best practice • Practice for the best practice Speed Learning Tech., Mind Mapping Design Pattern, DS, Algorithms The Best Practice Of the B.P is to Focus - Mindful How to reach the best Practice.
  • 144.
  • 146.
    KEEP IN TOUCHKeepin touch Join slack.com & subscribe to our channel (#fciteam) https://dirtyhandsws.slack.com/ Send your email to Amr.salah.2010@gmail.com to add you to the list with the following pattern: Subject: #fciteam-Please Add Me

Editor's Notes

  • #39 Data extraction is where data is extracted from homogeneous or heterogeneous data sources; Data transformation where the data is transformed for storing in the proper format or structure for the purposes of querying and analysis;  Data loading where the data is loaded into the final target database, more specifically, an operational data store, data mart, or data warehouse.
  • #40 Data extraction is where data is extracted from homogeneous or heterogeneous data sources; Data transformation where the data is transformed for storing in the proper format or structure for the purposes of querying and analysis;  Data loading where the data is loaded into the final target database, more specifically, an operational data store, data mart, or data warehouse.
  • #60 We are using services separately, for instance, EC2 has to be attached to EBS/Network
  • #70 What is important is data storage and data sensitivity
  • #71 What is important is data storage and data sensitivity
  • #84 security solutions encrypt the data to protect it from theft. However, a malicious program or a hacker could corrupt the data in order to make it unrecoverable, making the system unusable.
  • #109 https://www.deepdotweb.com/2016/12/31/two-new-models-double-spending-attacks-bitcoins-blockchain/
  • #110 https://www.deepdotweb.com/2016/12/31/two-new-models-double-spending-attacks-bitcoins-blockchain/
  • #118 https://www.deepdotweb.com/2016/12/31/two-new-models-double-spending-attacks-bitcoins-blockchain/
  • #119 https://coinsutra.com/bitcoin-double-spending/
  • #122 https://www.deepdotweb.com/2016/12/31/two-new-models-double-spending-attacks-bitcoins-blockchain/
  • #123 https://www.deepdotweb.com/2016/12/31/two-new-models-double-spending-attacks-bitcoins-blockchain/
  • #125 https://www.youtube.com/watch?v=SSo_EIwHSd4
  • #135 How many ones joined FCI for degree ? Score ? Work in IT? Passionate to the career ?! How many ones believe they shouldn’t be a part of FCI ? WHY ?
  • #139 Why we lose passion hope Confidence Trust Vision purpose