[go: up one dir, main page]

SlideShare a Scribd company logo
GRIMOIRE du IT
Eloim, Essaim, frugativi et appellavi
First Edition - 07/12/2017
written by anh kura (LFTV)
.KqQJ WD Ni JọL 0ORLP 0VVVDLP
dFK PD WK ậW ?
Summary & Index
Làm việc trong ngành IT hằng ngày
bạn sẽ được nghe rất nhiều câu thần
chú. Phần lớn đều sử dụng nguyên
tiếng Anh. Điểm này thì người Nhật
cũng vậy, nhưng người Nhật không
phát âm theo tiếng Anh chuẩn mà
phát âm thành tiếng Anh katakana
khiến cho những thuật ngữ IT Qc
QJKH NKdF D VR ớL QJ iQ EảQ
?URQJ VdFK Qc WnL LQ JLảL WKkFK Vơ
T D ề QKữQJ WKầQ FKq FầQ WKLếW QKấW
GcQK FKR ốL WượQJ QKậS PnQ DQJ
OcP FnQJ LệF FRPP QLFDWRU WURQJ
FdF FnQJ W KậW
s Fm kW QKLề QộL G QJ ượF WKể KLệQ
GựD WUiQ QKậQ WKứF Fd QKeQ
Index
- Internet
- Development Process
- Inside of Server
- Implementation
- Test
- Server & Security
Internet
How Internet works?
Device:
- PC
- Smart Phone
- Tablet
Browser:
- IE
- Chrome
- Firefox
Access
Response
User/Consumer Service
SNS
Blog
Search Engine
- Google
- Yahoo!
→ Search by google
Chat tool
- ChatWork
- Slack
etc.
How Internet works?(DNS)
User/Consumer Name Server
Server
www.homes.co.jp
lifull-tech.vn
www.homes.co.jp
= 123.223.111.xxxlifull-tech.vn
= xxx.xxx.xxx.xxx
lifull-tech.vn server
xxx.xxx.xxx.xxx
HOME’S server
xxx.xxx.xxx.xxx
Domain
URL
URL
IP Address
Global IP
ịD FKỉ QWHUQHW Oc Gf Vố dF ịQK
DNS?
Domain Name System
Address book of Internet.
How Internet works?(hosts)
Name Server
anhkura.vn
No. Idk
xxx.xxx.xxx.xxxHosts file
Okay. Got it!
File Hosts Oc F ốQ Vổ ịD FKỉ ượF QJ Nr VẵQ
FdFK JọL T D ịD FKỉ ể Fm WKể JọL UD WUiQ
VHU HU ?KLếW OậS WUiQ . Fd QKeQ KRặF WUiQ
VHU HU
Trường hợp các OS Unix Linux của Mac c
Ubuntu thì tùy theo version của Windows ở
/etc/hosts NKdF QKD chẳng hạn ta có
Windows/system32/drivers/etc/hosts
Nếu ghi lên Hosts WKj ộ ư WLiQ Wp WK ộF cR
Server Name
Nếu không đặt tên
thì sẽ không biết gọi thế
nào
Development
Process
Development Process
Marketing Planning Sales/Consultant
Design Development
TestUAT: User Acceptant Test
Launch/Release/Deployment
Customer Development Team
Upstream Process
UT: Unit Test
Integration Test
Performance Test
Security Test
Various kind of process
management
Flow type Methodology .dFK V QJKt
Water fall
PMBOK
/ự dQ SKeQ UD WKHR WừQJ JLDL
RạQ PỗL JLDL RạQ SKảL ượF
KRcQ WKcQK WUướF NKL FK ểQ
VDQJ JLDL RạQ Nế WLếS JD
Wừ OqF EắW ầ Gự dQ lL KỏL
SKảL Fm PộW VSHF KRcQ KảR WKj
Gự dQ PớL WKcQK FnQJ ượF
Agile
Scrum
Lean
XP: eXtrem Programming,
Kanban
etc
AừD QKậQ IHHGEDFN FKL WLếW Wừ
NKdFK KcQJ ừD ảP EảR
qQJ ề i Fầ VảQ SKẩP
WURQJ NKL WLếQ KcQK Gự dQ O nQ
WạR UD VảQ SKẩP FKấW OượQJ
KơQ
Ở KậW j Q KRd KợS ồQJ
c SKkD ặW KcQJ SKảL FKị
WUdFK QKLệP T d OớQ QiQ QJườL
WD NKnQJ P ốQ OcP FKR OắP
Roles(ADL WUl)
PO: Product Owner
PM: Project Manager
JườL FKị WUdFK QKLệP SURMHFW
2ầQ QKư mQJ DL WUl FủD NKdFK KcQJ
Ac Oc QJườL Vs UD T ếW ịQK Fm FKL WLềQ KD NKnQJ
Designer
JườL WKLếW Nế
Ở KậW Kầ QKư GHVLJQHU ELếW Fả html, css
Người chỉ biết html, css FuQJ Fm NKL ượF JọL Oc Coder
e FKỉ Oc FdFK QKjQ QKậQ ULiQJ ở KậW
Developer
Frontend Engineer
Người lập trình, tạo ra ứng dụng
Server side Engineer
Infrastructure Engineer
Network Engineer
JườL WKLếW Nế VHU HU
Ở ALệW DP Kầ QKư NKnQJ Fm
Tester
QA: Quality Assurance
QC: Quality Control
JườL WKLếW Nế OiQ Nế KRạFK WHVW WLếQ KcQK WHVW
Ac T ảQ Or FKấW OượQJ VảQ SKẩP
Scrum Master
Giống như người đóng vai trò PM khi làm với Scrum.
Khác nhau giữa PO/PM FKỉ Oc T ềQ T ếW ịQK QKeQ Vự
Keywords of Scrum
Keyword Description Keyword Description
practice Các event thực hiện trong Scrum Ticket
?DVN ượF T ảQ Or EằQJ FdF WRRO
T ảQ Or WDVN
planning ế KRạFK Kanban/Scrum Board -ảQJ WUựF T DQ KmD FdF WDVN
Sprint/Iteration
KeQ FKLD WRcQ Eộ WLếQ WUjQK SKdW
WULểQ UD WừQJ JLDL RạQ QKỏ ể SKdW
WULểQ VảQ SKẩP
Velocity ?ốF ộ SKdW WULểQ FủD WHDP
Daily Scrum/Daily Stand up 3ọS GDLO PỗL VdQJ Pair Programming
?LếQ KcQK OậS WUjQK nL ể KDL OậS
WUjQK LiQ Fm WKể FKLD Vs c W QJ
VNLOO FủD QKD QKằP QeQJ FDR KLệ
T ả FnQJ LệF
Review
?KựF KLệQ GHPR FKR URG FW
R QHU c QKậQ IHHGEDFN
CI/CD: Continuous
Integration/Delivery
.ố JắQJ KếW VứF ể Fm WKể UHOHDVH
VảQ SKẩP OLiQ WụF
Retrospective
3ọS QKjQ OạL WRcQ Eộ WLếQ WUjQK SKdW
WULểQ 3ọS EcQ ưD UD SKươQJ dQ
FảL WLếQ
Product Backlog
LVW i Fầ FKứF Q QJ URG FW
R QHU T ảQ Or
Priority
ứF ộ ư WLiQ KấW ịQK SKảL VHW
ộ ư WLiQ
Inside of Server
Programming Language
Type Ví dụ
Compiler Language Java, C, C++, C# etc
Script Language PHP, Ruby, JavaScript, Python, etc.
Functional Language Haskel, Lisp, Scala, etc
Web Server
Trên Web VHU HU FầQ SKảL WKLếW OậS httpd.
Ac FlQ Apache Nginx Tomcat Unicorn HWF
?KLếW OậS virtual hosts, vhosts c WKLếW OậS FKR WKựF WKL FdL Jj QKư WKế QcR
NKL QKậQ UHT HVW JRcL UD FlQ QKLề WKLếW OậS NKdF
OS
OS phổ biến trên PC local là Windows Mac Ubuntu, trên smartphone là
Android, iOS.
: GpQJ FKR VHU HU Kầ KếW Oc Unix LinuxvKD Linux Distribution Oc
AmazonLinux CentOS Redhat Linux. ?p cR ứQJ GụQJ Pc QJườL WD SKeQ UD
WừQJ Kệ Lề KcQK NKdF QKD QKư ậ ể Vử GụQJ QKưQJ Fm WKể QmL
KướQJ KLệQ QD Oc GpQJ AmazonLinux.
: GpQJ FKR VHU HU Fơ EảQ NKnQJ Fm Graphical User Interface! NKnQJ
WKDR WdF EằQJ FK ộW Wừ PcQ KjQK GHVNWRS Pc WKDR WdF EằQJ FRPPDQG OLQH
ALệF Jo GlQJ OệQK OiQ PcQ KjQK ượF JọL Oc CUI (Character User Interface!
PcQ KjQK ể Jo GlQJ OệQK ượF JọL Oc CLI Command Line Interface! KD
Terminal. .m WKể WKấ Kầ KếW PọL QJườL ề VHW PcQ KjQK Fm EDFNJUR QG
Pc HQ 3ồL ưD WnL WừQJ Eị VếS EảR Oc Kf ể PcQ KjQK HQ ể NKỏL Eị SKeQ
WdQ QmL FK ệQ Qc Qọ
Implementation
Stage
User
Developer
Production Environment
nL WUườQJ WKậW!
Develop Environment
Local Machine
Development
Deploy
HOHDVH!
Stage
?p WKHR WjQK KjQK c WLếQ ộ SKdW WULểQ Pc Vs WKD ổL PnL WUườQJ Ac F ốL FpQJ Oc UHOHDVH
OiQ PnL WUườQJ WKậW ?ứF Oc FKỗ ể GHSOR UHVR UFH OiQ VHU HU
Môi trường Live, Production. Môi trường thật.
Môi trường Pool. Có cấu tạo môi trường hoàn toàn giống với môi trường
Production ngay trước khi release. Còn được gọi là môi trường Stagging. Môi
trường này để thực hiện test lần cuối.
Môi trường Backstage. Là môi trường test chỉ test file nào chuẩn bị release
đã được up lên. Cũng có khi không có file nào.
Môi trường Current. Môi trường test phần chức năng do các team đang
phát triển. Nếu dùng Git thì cái này không cần thiết lắm.
Môi trường Unit. Là môi trường phát triển của từng dev.
Ak Gụ ề VWDJH
Version Control
ế WHDP Fm QKLề GH WKj FầQ SKảL T ảQ Or OịFK Vử SGDWH FủD FdF GH
DL f OcP Jj NKL QcR Aj VD NKL UHOHDVH Pc Fm E J WKj WjQK K ốQJ ượF
QJKt ếQ Oc Fm WKể QJườL WD Vs P ốQ T D OạL HUVLRQ QJD WUướF m
FKẳQJ KạQ KL m Kệ WKốQJ T ảQ Or HUVLRQ Vs ượF GpQJ ếQ WD Fm
FdF Kệ WKốQJ QKư Oc . A A 2LW 3LệQ QD FKủ ế Oc GpQJ 2LW
QKưQJ A ẫQ FlQ ượF Vử GụQJw
Trên Git thì ta có thể tự chuẩn bị hệ thống cần thiết nhưng đa phần mọi
người hay sử dụng dịch vụ được cung cấp đã trang bị sẵn các tool cần
thiết. Một số hê thống tiêu biểu như github, bitbucket, gitlab…
DVFRW FKDUDFWHU FủD github ượF JọL Oc Octocat, trông khá đáng yêu.
Version Control
git
remote
[app repository]
master branch
feature branch1
(remote)
feature branch2
feature branch1
(local)
feature branch1
commit
push
checkout
Phân branch
merge/ PR
AớL PỗL DSS WD Vs WạR PộW repository , Wừ KDL
QKdQK GHID OW Oc master và develop tạo
branch để phát triển và tiến hành phát triển
trên nhánh đó. Cơ bản là như sau:
checkout/clone PộW UHSRVLWRU WUiQ Pd
ORFDO UồL WLếQ KcQK GH ở ORFDO VD m
commit , UồL push OiQ WUiQ VHU HU JọL Oc
Remote, GướL Pd JọL Oc Local.
D NKL UHOHDVH RQJ WKj Vs merge cR
QKdQK master/develop. Nếu merge trực
tiếp thì cần phải tạo Pull request UồL PớL
PHUJH .m FdF 1OR SKdW WULểQ Vử GụQJ JLW
QKư git-flow, github-flow, LệF Vử GụQJ IOR
QcR Wp WK ộF cR T L Pn c WjQK WUạQJ Gự
dQ Pc Vs WKD ổL WKHR
KL FKỉQK VửD FpQJ PộW ILOH FpQJ PộW GlQJ
FRGH Vs ả UD Conflict. ế ả UD FRQIOLFW
WKj ừD NKmF ừD VửD WKnL
Coding Standard
?URQJ WUườQJ KợS Fm QKLề OậS WUjQK LiQ GH FpQJ QKD Qế NKnQJ ưD UD
PộW FK ẩQ FRGH FK QJ WKj PỗL QJườL FRGH PộW NLể GẫQ ếQ VR UFH FRGH UấW
NKm ọF /R m PớL WKốQJ QKấW FK ẩQ LếW FRGH FKR FdF GH 2 LGHOLQH FKR
FRGLQJ ượF JọL Oc Coding Standard, c FK ẩQ Pf QJ ồQ FuQJ Fm QKLề ORạL Fm
FK ẩQ FK QJ c FK ẩQ ULiQJ .KẳQJ KạQ 3 WKj QổL WLếQJ Oc WLi FK ẩQ PSR-2
. Q EảQ Oc PỗL OậS WUjQK LiQ FầQ SKảL Wự JLdF Fố JắQJ LếW WKHR WLi FK ẩQ
QKưQJ EởL j SKụ WK ộF cR Vự Wự JLdF Fố JắQJ FủD Fd QKeQ QiQ Qm NKnQJ FKắF
FKắQ ổQ ịQK j ậ lL KỏL SKảL Fm PộW Kệ WKốQJ NLểP VRdW VR UFH FRGH WKHR
FK ẩQ Qc 3 WKj Fm WKể GpQJ FK ẩQ php-cs-fixer, Ruby thì dùng chuẩn
rubocop. KnQJ FKỉ Fm FRGLQJ VWDQGDUG Pc FlQ Fm FnQJ Fụ ể SKeQ WkFK VR UFH
FRGH Static Code Analysis QữD.
ALệF QKậQ ịQK FRGH QKư ậ Fm WKHR WLi FK ẩQ FRGH KD NKnQJ NKd Pơ Kồ
QKưQJ ể FRGH Gễ ọF WKj ở KậW FdF GH ề Vử GụQJ F ốQ The Art of readable
code, Gp Fm WKể EạQ FKR UằQJ NKnQJ FầQ SKảL QmL ươQJ QKLiQ WnL FuQJ Vs OcP
QKư WKế KưQJ Lề T DQ WUọQJ QKấW Oc FdF GH ề Fm QKậQ WKứF QKư QKD ề
FRGH FK ẩQ KD NKnQJ ế PỗL QJườL PộW WKmL T HQ FRGH ULiQJ WKj FKẳQJ Fm r
QJKtD Jj Fả
Object-oriented
Object-oriented Programming OOP Oc PộW FdFK V QJKt ể QắP EắW KcQK L FủD
Kệ WKốQJ QKư Oc Vự WươQJ WdF T D OạL JLữD FdF ốL WượQJ Qm Fm FdF ặF WKp Fơ EảQ
Oc Encapsulation, Composition, inherit và delegationvPolymorphism ấ Oc FdL
Pớ Jj ậ FKỉ Oc FdFK V QJKt WLệQ OợL NKL PọL QJườL SKdW WULểQ Pc WKnL Design
Pattern Oc WổQJ KợS FdF FdF SKươQJ SKdS WKLếW Nế WốW QKấW FủD Object-oriented , Fm
UấW QKLề SKươQJ SKdS WKLếW Nế KướQJ ốL WượQJ KnQJ Fm Pấ QJườL Fm WKể ậQ
GụQJ /HVLJQ DWWHUQ Qc cR WKựF Wế NKL FRGH ộW WURQJ QKữQJ SKươQJ SKdS WKLếW
Nế WKcQK FnQJ QKấW WURQJ FdF SKươQJ SKdS WKLếW Nế KướQJ ốL WượQJ KLệQ QD Oc
MVC pattern. e Oc SKươQJ SKdS FKLD UD ) WKcQK SKầQ FKkQK Model View
Controller, ượF ưD cR UấW QKLề Framework.
Các framework MVC như là
PHP: ZendFramework CakePHP Symfony Laravel...
Ruby: Ruby on Rails Sinatra
Java: Struts
?URQJ FdF View này Kầ KếW ề FKọQ Template Engine , JLảL SKdS ?HPSODWH
0QJLQH QổL WLếQJ Fm Smarty, Twig, Blade.
KữQJ Q P JầQ e LệF Vử GụQJ IUDPH RUN ể SKdW WULểQ f WUở QiQ SKổ ELếQ
QiQ FcQJ QKLề QJườL Fứ OầP WưởQJ Oc f KLể ề OậS WUjQK KướQJ ốL WượQJ e
FuQJ Oc PộW QJ iQ QKeQ NKLếQ FKR QKữQJ QJườL Gp f Fm QKLề NLQK QJKLệP
QKưQJ VNLOO ẫQ NKnQJ NKd OiQ ượF
.m QKLề Or GR Pc QKữQJ FRGH T d SKứF WạS KD FRGH EẩQ FlQ ượF JọL Oc
Spaghetti Code hay case, uncode.
Test
Test
Có nhiều loại kiểm thử. Thông thường sẽ test theo trình tự sau: Unit Test
?HVW ợQ ị! Integration Test WHVW WkFK KợS! System Test WHVW Kệ
WKốQJ! Acceptance Test WHVW FKấS QKậQ!
?UướF WLiQ Vs SKeQ WkFK i Fầ ể HP Test View Point QKư WKế QcR VD
m OậS VFKHG OH OiQ Test Planning. Trong Test View Point NKnQJ FKỉ Fm WHVW
i Fầ FKứF Q QJ Pc FlQ Fm WHVW QRQ I QWLRQ QKư Performance Test,
Security Test.
/ựD WUiQ i Fầ FKứF Q QJ ể WạR Test Spec/Test Case c WLếQ KcQK WHVW.
Trong Test còn có rất nhiều loại test khác, được sử dụng tùy theo yêu cầu
dự án. Ví dụ như: Regression Test (test hồi quy) để kiểm thử các chức năng
có chạy ổn định không, Smoke Test để kiểm thử đại khái các chức năng
chính có bị bất thường không, Walkthrough Test để kiểm thử sử dụng thử
các chức năng đã hoàn thành theo yêu cầu dự án chưa, Monkey Test là
kiểm thử dưới tư cách user ưD JLd WUị ầ cR EấW N c NLểP WUD HP
ứQJ GụQJ ử Or UD VDR
Có một tổ chức là ISTQB International Software Testing Qualification
Boards! Vs FấS FKứQJ FKỉ Qc FKR , ?URQJ OtQK ựF WHVW WKj e Oc PộW
FKứQJ FKỉ FK QJ ượF T ốF Wế FnQJ QKậQ Ở LFTV tôi nghĩ cũng sẽ tuyển
QA bằng yêu cầu có chứng chỉ ISTQB Foundation chứ không cần test
thêm gì cả.
Test
Test c Jj ,L WKựF KLệQx
Unit Test
LểP WUD PứF ơQ ị UT!
?HVW FdF ơQ ị Fm NkFK WKướF QKỏ QKư 1 QWLRQ c
HWKRG ể dF QKậQ FKqQJ Fm DQJ FKạ qQJ NKnQJ
ậS WUjQK LiQ Vs LếW WHVWFRGH
ộ EDR SKủ WHVW ượF JọL Oc Coverage.
Developer
Integration Test
LểP WUD WkFK KợS!
LểP WKử WổQJ WKể FKứF Q QJ WkFK KợS f SKdW WULểQ HP
Fm FKạ qQJ NKnQJ
QA
System Test
LểP WUD PứF Kệ WKốQJ!
Kd JLốQJ ớL PnL WUườQJ WKậW NLểP WKử WRcQ Eộ FKứF
Q QJ Fm FKạ qQJ NKnQJ
QA
User Acceptance Test
LểP WUD FKấS QKậQ FủD QJườL GpQJ!
JườL GpQJ NLểP WUD SKầQ PềP Fm OcP qQJ ớL i Fầ
QJKLệS ụ NKnQJ
Customer
Requirement Analysis
KeQ WkFK i Fầ !
Requirement Definition
ịQK QJKtD i Fầ !
Basic Design
?KLếW Nế Fơ EảQ!
Specific Design
?KLếW Nế FKL WLếW!
Coding Code Review
Unit Test
Integration Test
System Test
Acceptance Test
Automation Test
KL SKảL WHVW L WHVW OạL QKLề OầQ WKj FầQ WKựF KLệQ NLểP WKử Wự ộQJ LểP WKử Wự ộQJ FuQJ ượF
NK ếQ NKkFK Vử GụQJ NKL SKdW WULểQ SKầQ PềP WKHR SKươQJ SKdS . ./
Dev. Servers
Jenkins
Web Hook
Feed back
Clone
Push
Static Code Analysis
Unit Test
UI Test
Jenkins Vs T ảQ Or FdF H HQW FKẳQJ KạQ
QKư S VK! WURQJ UHVSRVLWRU FủD JLW T D
Webhook WLếQ KcQK WHVW Wự ộQJ T D
Selenium, ? c FnQJ Fụ SKeQ WkFK FRGH
WtQK WHVW SHUIRUPDQFH T D Jmeter c
Apache Bench, QKậQ IHHGEDFN T D
WRROFKDW QKư ChatWork c Slack.
?HVW ếQ PứF QcR WKj Wp WK ộF cR ịQK
QJKtD FKấW OượQJ VảQ SKẩP ượF ảP
EảR
Nếu dùng github WKj Fm WKể Vử GụQJ UấW
QKLề WRRO Pc NKnQJ FầQ WKnQJ T D
HQNLQV e FKkQK Oc ư LểP OcP QiQ
JLd WUị ượW EậF FủD github . Và do vậy
giá của nó khá cao.
.
.
.
Server & Security
Various kind of servers
Server
Cloud
On Premise
AWS
heroku
Data Center
Server Room
qF EjQK WKườQJ WKj NKnQJ Fm ếQ WU FậS QKưQJ cR PpD JLdQJ VLQK WKj Vố WU FậS W QJ ếQ
OầQ WKậW NKm WưởQJ WượQJ WjQK WUạQJ VHU HU OqF my
ế GpQJ :Q UHPLVH WKj FầQ SKảL P D VHU HU UồL VHW WUướF ể ốL ứQJ cR QKữQJ OqF OượW WU FậS FDR
EấW QJờ QKư GịS JLdQJ VLQK AừD WốQ WLềQ Pc FuQJ NKnQJ FKắF Oc Fm ảP EảR ốL ứQJ ượF NKnQJ
KưQJ Qế GpQJ .OR G VHU HU WKj NKnQJ FKỉ FầQ WKLếW FKR PỗL PpD FDR LểP QKư JLdQJ VLQK Pc EjQK
WKườQJ FuQJ KRcQ WRcQ ứQJ GụQJ WốW Ac NKnQJ Kề Je OfQJ SKk
? SH
Ak Gụ
Various kind of access
.dF SKươQJ WKứF WU ềQ WLQ WUiQ VHU HU ượF JọL Oc SURWRFRO ỗL SURWRFRO WUiQ VHU HU Vs Fm FdF FổQJ cR ượF
FKỉ ịQK Vố JọL Oc SRUW 2mL WLQ VVK FlQ ượF JọL Oc JmL WLQ Vố (( JườL T ảQ Or Pd FKủ Vs mQJ SRUW Pở SRUW
KD WKD ổL Vố SRUW NKL FầQ WKLếW ế n r Pở SRUW Fm WKể Eị Nẻ NKdF cR SKd UốL KRặF Eị Nẻ WUộP ộW QKậS cR
dQK FắS WKnQJ WLQ ALệF JLớL KạQ JmL WLQ JọL Oc Fire Wall.
-jQK WKườQJ WKj Vs WKLếW OậS Fire wall cho mỗi đơn vị dịch vụ nhưng cũng có khi giới hạn truyền thông tin đi theo
quốc gia giống như Great Fire Wall của Trung Quốc, SNS của Facebook c Twitter
Protocol Default Port ỨQJ GụQJ ?K ậW QJữ OLiQ T DQ
http 80
,FFHVV EUR VHU WKnQJ
WKườQJ
https 443
f KmD FdF WKnQJ WLQ
FầQ EảR PậW QKư
WKnQJ WLQ Fd QKeQ NKL
WU ềQ WLQ
SSL
SSL SURWRFRO, chứng
chỉ SSL
FTP 20, 21 SORDG GR QORDG ILOH
ssh 22
ếW QốL cR VHU HU c
OcP QKề LệF NKdF
Command Line
(cmd, cli)
SMTP
23 DLO
Fire Wall & Proxy
Fire Wall chặn gói tin được truyền đến từ một đối tượng
xác định hay chỉ cho phép nhận gói tin được truyền đến
từ một đối tượng xác định.
This is Hiroshi speaking.
Can I talk to Ms. Hang??
Hiroshi san
Hang san
Fire Wall
Không thể nói
chuyện với Mr.
Hiroshi
Nguyen san
Có thể nói
chuyện với
Mr.Nguyen
This is Nguyen speaking.
Can I talk to Ms. Hang??
FireWall & Proxy
Nếu gói tin bị FireWall FKặQ OạL EạQ Fm WKể DFFHVV ớL Wư FdFK NKdF ể WKnQJ T D
ượF 1LUHBDOO ALệF DFFHVV GướL Wư FdFK NKdF ượF JọL Oc WKnQJ T D Proxy KD L
iQ T D Proxy .
Could you call Ms. Hang?
Hiroshi san
Hang san
Fire Wall
Không thể nói
chuyện với Mr.
Hiroshi
Nguyen san
Có thể nói
chuyện với
Mr.Nguyen
OK, I got it.
This is Nguyen speaking.
Can I talk to Ms. Hang??
Yes, I'm
here.
NAT
2mL WLQ NKnQJ ượF WU ềQ WUựF WLếS ếQ ốL WượQJ kFK Pc ượF WU ềQ T D VHU HU WU QJ JLDQ
NAT(Nguyen Anh Tuan Network Address Transfer), để tăng mức độ bảo mật. Cách này còn được
gọi là Bastion server.
Việc tiến hành cho gói tin ssh L T D VHU HU Bastion được gọi bằng nhiều cách khác nhau, như là ssh
đa cấp, ssh tunnel, Port forward.
Việc thiết lập qua server NAT ượF JọL Oc Route Table
KnQJ SKảL j PụF kFK EảR PậW FuQJ Fm WUườQJ KợS ể SKeQ UD WừQJ HE VHU HU Kệ WKốQJ Vs
QKậQ KcQJ ORạW FdF UHT HVW http/https rồi thiết lập proxy server. LểP NKdF VR ớL UR QmL ếQ OqF
Qf Oc Qm NKnQJ SKảL EiQ SKkD VHU Pc Wừ SKkD VHU HU
Hiroshi san Hang sanFire Wall
NAT Server
(Nguyen san)
Hãy cho tôi nói
chuyện với riêng
Nguyen san thôi.
Subnet
Subnet Oc Kệ WKốQJ FKLD QKỏ HW RUN UD Aj WkQK EảR PậW KD ể WLệQ OợL KơQ WURQJ
LệF SKeQ UROH QiQ QJườL WD SKeQ UD FdF V EQHW QKư ậ PụF kFK OqF ầ ốQ NKnQJ
SKảL ậ QKưQJ WạP WKờL JLờ WnL FKưD QmL WớL! LD FKỉ Oc ịD FKỉ WUiQ LQWHUQHW Fm
WKể FRL Qm QKư IORRU WKj WD Vs Fm IORRU EOLF FKR NKdFK c IORRU UL DWH GpQJ ULiQJ
FKR QKeQ LiQ WURQJ FnQJ W
Địa chỉ IP có cấu trúc như bên dưới:
Public Subnet
Private Subnet
Network
xxx.xxx.xxx.xxx
QHW RUN
V EQHW
KRVW
NACL & SG
Việc thiết lập security cho Subnet được gọi là Network ACL , hay NACL
(Network Access Control Lists ! ?UiQ ,. Vs WKLếW OậS Vơ OượF LệF FKR
SKhS FdF JmL WLQ ượF WU ềQ L
ỗL VHU HU Vs ượF WKLếW OậS VHF ULW Fụ WKể ULiQJ ALệF Pở VẵQ RUW FKưD
Vử GụQJ UấW QJ KLểP QiQ Qm Vs WKLếW OậS FKỉ Pở RUW FầQ WKLếW .m WKể
VHW QKLề O ậW FKR QiQ FlQ ượF JọL Oc Security Group.
Public Subnet
Private Subnet
NACL
Security Group(SG)
Inbound Outbound
Availability Zone
NAT
Web Server API Server XX server
ế ặW WấW Fả VHU HU FpQJ PộW FKỗ WKj NKL SKdW VLQK ấQ ề Jj Vs UắF UốL
WR QiQ FầQ SKảL EDFN S PộW FKỗ NKdF c WKựF KLệQ FK ểQ ổL WKủ
FnQJ Wự ộQJ
Trên AWS SKeQ UD ( NK ựF FKkQK Oc Region c Availability Zone AZ!
Region là đặt server ở các vị trí khác nhau, chẳng hạn Tokyo và
Oregon. Còn AZ thì sẽ đặt các server trong cùng một khu vực sao cho
chúng không làm ảnh hưởng lên nhau.
Các server của từng Region Vs NKdF QKD
Cho đến ngày 1/12/2017! AWS Fm FdF HJLRQ
North Virginia, Ohio, North Carolina, Oregon, Canada, Ireland,
Frankfurt, London, Tokyo, Seoul, Singapore, Sydney, Mumbai, San Paulo
ớL e AWS đã thoái lui khỏi thị trường Trung Quốc và Beijing Region
đã không còn là Region thuộc dịch vụ của AWS tại trung Quốc nữa.
AZ: a AZ: c
AZ AZ
AZ
Region
AZ AZ
AZ
Region
AZ AZ
AZ
Region
Region & Availability Zone
AZ: a
Load Balancer
LB
Web Server WEB Server WEB server
ế Fm T d QKLề WU FậS cR FpQJ OqF PộW VHU HU Vs
NKnQJ FKị WảL QổL qF m FầQ FK ẩQ Eị WKiP VHU HU NKdF
Fm Fấ WUqF JLốQJ VHU HU KLệQ WạL ể JdQK EớW UHT HVW WớL
2ọL Oc FKLD WảL LệF ử Or Qc JọL Oc Load Balancer. Trên AWS
thì gọi là ELB ( Elastic Load Balancer) hay là ALB(Application
Load Balancer). Vì đã có ALB là version mới của ELB nên từ
giờ không có lý do gì để chọn dùng ELB nhưng kể từ khi LB
của AWS cũ rồi người ta chuyển qua gọi là ELB thì giờ đây
phiên bản mới ALB lại thường được gọi theo cách quen
thuộc là ELB.
ế Oc RQ SUHPLVHV WKj FầQ SKảL JLả ịQK WKậW QKLề DFFHVV
UồL FK ẩQ Eị VHU HU QKưQJ Qế Oc .OR G WKj Qm Fm WKể Wự
QeQJ FấS VHU HU ể ốL ứQJ NKL FầQ WKLếW ALệF QeQJ FấS
W QJ NKả Q QJ ốL ứQJ FủD VHU HU OiQ JọL Oc Scale out, hệ
thống tự động tăng khả năng đối ứng khi hệ thống bị vượt ra
ngoài điều kiện đối ứng đã định trước với chức năng của ELB
được gọi là Auto Scaling , cái này thì vừa phải với túi tiền
người dùng. Auto Scaling có thể được thiết lập cho một
nhóm server Auto Scaling Group!w
JRcL UD FuQJ Fm NKL Vs ử Or W QJ FườQJ G QJ OượQJ
VHU HU c NKả Q QJ ử Or FKR Kệ WKốQJ FdL Qc JọL Oc Scale
Up .
.KLD WảL
HU HU Fm FpQJ QộL G QJ
-jQK WKườQJ WKj NKnQJ ụQJ
ếQ QKưQJ NKL FầQ WKLếW Qm
Vs W QJ NKả Q QJ ốL ứQJ
OiQ FDOH R W!
Various type of Servers
? SH ỨQJ GụQJ Ak Gụ 2KL FKq
EC2
(Elastic Compute
Cloud)
HU HU WKnQJ WKườQJ
Có thể tạo ra rất đơn
giản từ AMI(Amazon
Machin Image)
RDS
(Relational Database
Service)
/DWDEDVH Oracle, MySQL,
PostgreSQL
ElastiCache
KVS(Key Value Store)
.DVK Redis, Memcache
Cash On Memory
,FFHVV QKDQK
S3
(Simple Storage
Service)
File Storage
Chỗ chứa file
Tạo Bucket trong S3
NoSQL /DWDEDVH MongoDB
?ừQJ Pd WUiQ PỗL VHU HU ượF JọL Oc Instance (KD EC2 Instance ), PỗL LQVWDQFH Vs WKLếW OậS ặF
ELệW KRặF Small KRặF Large
Other services
?iQ VHU LFH ỨQJ GụQJ 2KL FKq
SES
Simple Email Service!
2ửL PDLO
Oregon hay Virginia
?URQJ EC2 instance, lập
SendMail c Postfix FuQJ ượF
KMS
Key Management Service!
H Pf KmD
IAM
Identity and Access
Management!
,FFR QW
?KLếW OậS JLớL KạQ T ềQ FKR
WừQJ UHVR UFH JRcL DFFR QW
ULiQJ FlQ WKLếW OậS IAM Role
FKR VHU HU
Code Commit ảQ Or HUVLRQ
.m WKể T ảQ Or HUVLRQ FủD
VR UFH .ầQ Fm ,
VPC
Virtual Private Cloud!
KmP FdF VHU HU WKcQK PộW
Kết nối các VPC với nhau gọi là
Peer Connect. Trong cùng một
Region có thể kết nối được với
nhau nếu Private IP NKnQJ g
OiQ QKD
Distribution Tool
?KLếW OậS WừQJ FdL WừQJ FdL QKư QKD UấW SKLềQ QiQ FKỉ FầQ Vử GụQJ (ả ấ(
ể LếW ILOH WKLếW OậS WKựF KLệQ OệQK ể WdL KLệQ OạL Gễ GcQJ ?KLếW OậS JửL WLQ EdQ!
Wự ộQJ
Trường hợp tái hiện thiết lập toàn bộ VPC QHW RUN VHWWLQJ! WKj Vử GụQJ
CloudFormation, WKLếW OậS WừQJ VHU HU ULiQJ LQVWDOO c VHWWLQJ DSS Eố WUk VR UFH
FRGH! WKj Kầ QKư Vs Vử GụQJ Ansible và Chef.
.ơ EảQ Oc Vs LếW VHWWLQJ FKR xml , yml, json. 2ọL Oc Template, Playhook, KD
Cookbook, recipe.
Những Command hay nghe nói đến
?iQ FRPPDQG ử GụQJ 2KL FKq
yum /pQJ ể LQVWDOO
rpm apt, apt-gety
ế LQVWDOO Wừ VR UFHFRGH WKj
FầQ SKảL WLếQ KcQK configure,
UồL make.
grep HDUFK VWULQJ
nc
QHWFDW!
ượF Vử GụQJ ể dF QKậQ
WU ềQ WKnQJ PạQJ
.Kỉ ịQK RUW FủD ốL SKươQJ
ể HP Fm WKể WU ềQ WKnQJ
WLQ L ượF NKnQJ
sudo Thực hiện như root SuperUserDo
JRcL UD FuQJ Fm NKL Vử GụQJ FRPPDQG aws-cli chuyên dụng của AWS để install
?iQ .RPPDQG QcR QJKH WKấ KơL Uồ Uồ WKj FKắF FKắQ Oc GR OqF m QJườL WạR FRPPDQG f PệW UồL
?ừ QKdQK PDVWHU FắW QKdQK SKdW WULểQ UD UồL SKdW WULểQ WUiQ
QKdQK m .K ẩQ FRGH Oc ( QiQ UH LH UấW PệW GR m
WUướF NKL FRPPLW Kf FKHFN EằQJ SKS FV IL HU FKẳQJ KạQ D
NKL SKdW WULểQ RQJ Kf WạR S OO UHT HVW OiQ QKdQK PDVWHU
H LH OạL FRGH WKấ RN UồL PHUJH OiQ
D NKL PHUJH cR QKdQK PDVWHU UồL WKj JLWK E Vs SKdW VLQK
HEKRRN FKR MHQNLQV MHQNLQV GựD cR m Vs EdR FKR VHOHQL P
ELếW NKởL ộQJ VHOHQL P FKạ ! ốL ớL PnL WUườQJ KLệQ WạL WKj
FKạ Wừ PnL WUườQJ WHVW WUướF
ế WấW Fả NKnQJ Fm ấQ ề Jj WKj Vs S OiQ PnL WUườQJ VWDJLQJ
c WHVW WLếS ?HVW RQJ NKnQJ ấQ ề Jj WKj Fm dF QKậQ FủD :
UồL GHSOR OiQ PnL WUườQJ SURG FWLRQ VD m DFFHVV OiQ PnL
WUườQJ WKậW c WLếQ KcQK FKR RQJ QRWLILFDWLRQ T D FKDW RUN
-cL O ệQ WậS
- Kurabayashi Hiroshi
CIO at LIFULL Tech Vietnam Co.,Ltd., HCMC
@kura kura@lifull-tech.vn
ế Eỏ L eP Lệ FủD Wừ WLếQJ ,QK JốF Qế Oc eP QJắQ Kf SKdW eP Uo ếQ eP WLếW F ốL FpQJ QKư ậ Oc WKcQK WLếQJ ,QK DWDNDQD UồL m

More Related Content

Sách ma thuật IT - Grimoire du IT

  • 1. GRIMOIRE du IT Eloim, Essaim, frugativi et appellavi First Edition - 07/12/2017 written by anh kura (LFTV) .KqQJ WD Ni JọL 0ORLP 0VVVDLP dFK PD WK ậW ?
  • 2. Summary & Index Làm việc trong ngành IT hằng ngày bạn sẽ được nghe rất nhiều câu thần chú. Phần lớn đều sử dụng nguyên tiếng Anh. Điểm này thì người Nhật cũng vậy, nhưng người Nhật không phát âm theo tiếng Anh chuẩn mà phát âm thành tiếng Anh katakana khiến cho những thuật ngữ IT Qc QJKH NKdF D VR ớL QJ iQ EảQ ?URQJ VdFK Qc WnL LQ JLảL WKkFK Vơ T D ề QKữQJ WKầQ FKq FầQ WKLếW QKấW GcQK FKR ốL WượQJ QKậS PnQ DQJ OcP FnQJ LệF FRPP QLFDWRU WURQJ FdF FnQJ W KậW s Fm kW QKLề QộL G QJ ượF WKể KLệQ GựD WUiQ QKậQ WKứF Fd QKeQ Index - Internet - Development Process - Inside of Server - Implementation - Test - Server & Security
  • 4. How Internet works? Device: - PC - Smart Phone - Tablet Browser: - IE - Chrome - Firefox Access Response User/Consumer Service SNS Blog Search Engine - Google - Yahoo! → Search by google Chat tool - ChatWork - Slack etc.
  • 5. How Internet works?(DNS) User/Consumer Name Server Server www.homes.co.jp lifull-tech.vn www.homes.co.jp = 123.223.111.xxxlifull-tech.vn = xxx.xxx.xxx.xxx lifull-tech.vn server xxx.xxx.xxx.xxx HOME’S server xxx.xxx.xxx.xxx Domain URL URL IP Address Global IP ịD FKỉ QWHUQHW Oc Gf Vố dF ịQK DNS? Domain Name System Address book of Internet.
  • 6. How Internet works?(hosts) Name Server anhkura.vn No. Idk xxx.xxx.xxx.xxxHosts file Okay. Got it! File Hosts Oc F ốQ Vổ ịD FKỉ ượF QJ Nr VẵQ FdFK JọL T D ịD FKỉ ể Fm WKể JọL UD WUiQ VHU HU ?KLếW OậS WUiQ . Fd QKeQ KRặF WUiQ VHU HU Trường hợp các OS Unix Linux của Mac c Ubuntu thì tùy theo version của Windows ở /etc/hosts NKdF QKD chẳng hạn ta có Windows/system32/drivers/etc/hosts Nếu ghi lên Hosts WKj ộ ư WLiQ Wp WK ộF cR Server Name Nếu không đặt tên thì sẽ không biết gọi thế nào
  • 8. Development Process Marketing Planning Sales/Consultant Design Development TestUAT: User Acceptant Test Launch/Release/Deployment Customer Development Team Upstream Process UT: Unit Test Integration Test Performance Test Security Test
  • 9. Various kind of process management Flow type Methodology .dFK V QJKt Water fall PMBOK /ự dQ SKeQ UD WKHR WừQJ JLDL RạQ PỗL JLDL RạQ SKảL ượF KRcQ WKcQK WUướF NKL FK ểQ VDQJ JLDL RạQ Nế WLếS JD Wừ OqF EắW ầ Gự dQ lL KỏL SKảL Fm PộW VSHF KRcQ KảR WKj Gự dQ PớL WKcQK FnQJ ượF Agile Scrum Lean XP: eXtrem Programming, Kanban etc AừD QKậQ IHHGEDFN FKL WLếW Wừ NKdFK KcQJ ừD ảP EảR qQJ ề i Fầ VảQ SKẩP WURQJ NKL WLếQ KcQK Gự dQ O nQ WạR UD VảQ SKẩP FKấW OượQJ KơQ Ở KậW j Q KRd KợS ồQJ c SKkD ặW KcQJ SKảL FKị WUdFK QKLệP T d OớQ QiQ QJườL WD NKnQJ P ốQ OcP FKR OắP
  • 10. Roles(ADL WUl) PO: Product Owner PM: Project Manager JườL FKị WUdFK QKLệP SURMHFW 2ầQ QKư mQJ DL WUl FủD NKdFK KcQJ Ac Oc QJườL Vs UD T ếW ịQK Fm FKL WLềQ KD NKnQJ Designer JườL WKLếW Nế Ở KậW Kầ QKư GHVLJQHU ELếW Fả html, css Người chỉ biết html, css FuQJ Fm NKL ượF JọL Oc Coder e FKỉ Oc FdFK QKjQ QKậQ ULiQJ ở KậW Developer Frontend Engineer Người lập trình, tạo ra ứng dụng Server side Engineer Infrastructure Engineer Network Engineer JườL WKLếW Nế VHU HU Ở ALệW DP Kầ QKư NKnQJ Fm Tester QA: Quality Assurance QC: Quality Control JườL WKLếW Nế OiQ Nế KRạFK WHVW WLếQ KcQK WHVW Ac T ảQ Or FKấW OượQJ VảQ SKẩP Scrum Master Giống như người đóng vai trò PM khi làm với Scrum. Khác nhau giữa PO/PM FKỉ Oc T ềQ T ếW ịQK QKeQ Vự
  • 11. Keywords of Scrum Keyword Description Keyword Description practice Các event thực hiện trong Scrum Ticket ?DVN ượF T ảQ Or EằQJ FdF WRRO T ảQ Or WDVN planning ế KRạFK Kanban/Scrum Board -ảQJ WUựF T DQ KmD FdF WDVN Sprint/Iteration KeQ FKLD WRcQ Eộ WLếQ WUjQK SKdW WULểQ UD WừQJ JLDL RạQ QKỏ ể SKdW WULểQ VảQ SKẩP Velocity ?ốF ộ SKdW WULểQ FủD WHDP Daily Scrum/Daily Stand up 3ọS GDLO PỗL VdQJ Pair Programming ?LếQ KcQK OậS WUjQK nL ể KDL OậS WUjQK LiQ Fm WKể FKLD Vs c W QJ VNLOO FủD QKD QKằP QeQJ FDR KLệ T ả FnQJ LệF Review ?KựF KLệQ GHPR FKR URG FW R QHU c QKậQ IHHGEDFN CI/CD: Continuous Integration/Delivery .ố JắQJ KếW VứF ể Fm WKể UHOHDVH VảQ SKẩP OLiQ WụF Retrospective 3ọS QKjQ OạL WRcQ Eộ WLếQ WUjQK SKdW WULểQ 3ọS EcQ ưD UD SKươQJ dQ FảL WLếQ Product Backlog LVW i Fầ FKứF Q QJ URG FW R QHU T ảQ Or Priority ứF ộ ư WLiQ KấW ịQK SKảL VHW ộ ư WLiQ
  • 13. Programming Language Type Ví dụ Compiler Language Java, C, C++, C# etc Script Language PHP, Ruby, JavaScript, Python, etc. Functional Language Haskel, Lisp, Scala, etc
  • 14. Web Server Trên Web VHU HU FầQ SKảL WKLếW OậS httpd. Ac FlQ Apache Nginx Tomcat Unicorn HWF ?KLếW OậS virtual hosts, vhosts c WKLếW OậS FKR WKựF WKL FdL Jj QKư WKế QcR NKL QKậQ UHT HVW JRcL UD FlQ QKLề WKLếW OậS NKdF
  • 15. OS OS phổ biến trên PC local là Windows Mac Ubuntu, trên smartphone là Android, iOS. : GpQJ FKR VHU HU Kầ KếW Oc Unix LinuxvKD Linux Distribution Oc AmazonLinux CentOS Redhat Linux. ?p cR ứQJ GụQJ Pc QJườL WD SKeQ UD WừQJ Kệ Lề KcQK NKdF QKD QKư ậ ể Vử GụQJ QKưQJ Fm WKể QmL KướQJ KLệQ QD Oc GpQJ AmazonLinux. : GpQJ FKR VHU HU Fơ EảQ NKnQJ Fm Graphical User Interface! NKnQJ WKDR WdF EằQJ FK ộW Wừ PcQ KjQK GHVNWRS Pc WKDR WdF EằQJ FRPPDQG OLQH ALệF Jo GlQJ OệQK OiQ PcQ KjQK ượF JọL Oc CUI (Character User Interface! PcQ KjQK ể Jo GlQJ OệQK ượF JọL Oc CLI Command Line Interface! KD Terminal. .m WKể WKấ Kầ KếW PọL QJườL ề VHW PcQ KjQK Fm EDFNJUR QG Pc HQ 3ồL ưD WnL WừQJ Eị VếS EảR Oc Kf ể PcQ KjQK HQ ể NKỏL Eị SKeQ WdQ QmL FK ệQ Qc Qọ
  • 17. Stage User Developer Production Environment nL WUườQJ WKậW! Develop Environment Local Machine Development Deploy HOHDVH!
  • 18. Stage ?p WKHR WjQK KjQK c WLếQ ộ SKdW WULểQ Pc Vs WKD ổL PnL WUườQJ Ac F ốL FpQJ Oc UHOHDVH OiQ PnL WUườQJ WKậW ?ứF Oc FKỗ ể GHSOR UHVR UFH OiQ VHU HU Môi trường Live, Production. Môi trường thật. Môi trường Pool. Có cấu tạo môi trường hoàn toàn giống với môi trường Production ngay trước khi release. Còn được gọi là môi trường Stagging. Môi trường này để thực hiện test lần cuối. Môi trường Backstage. Là môi trường test chỉ test file nào chuẩn bị release đã được up lên. Cũng có khi không có file nào. Môi trường Current. Môi trường test phần chức năng do các team đang phát triển. Nếu dùng Git thì cái này không cần thiết lắm. Môi trường Unit. Là môi trường phát triển của từng dev. Ak Gụ ề VWDJH
  • 19. Version Control ế WHDP Fm QKLề GH WKj FầQ SKảL T ảQ Or OịFK Vử SGDWH FủD FdF GH DL f OcP Jj NKL QcR Aj VD NKL UHOHDVH Pc Fm E J WKj WjQK K ốQJ ượF QJKt ếQ Oc Fm WKể QJườL WD Vs P ốQ T D OạL HUVLRQ QJD WUướF m FKẳQJ KạQ KL m Kệ WKốQJ T ảQ Or HUVLRQ Vs ượF GpQJ ếQ WD Fm FdF Kệ WKốQJ QKư Oc . A A 2LW 3LệQ QD FKủ ế Oc GpQJ 2LW QKưQJ A ẫQ FlQ ượF Vử GụQJw Trên Git thì ta có thể tự chuẩn bị hệ thống cần thiết nhưng đa phần mọi người hay sử dụng dịch vụ được cung cấp đã trang bị sẵn các tool cần thiết. Một số hê thống tiêu biểu như github, bitbucket, gitlab… DVFRW FKDUDFWHU FủD github ượF JọL Oc Octocat, trông khá đáng yêu.
  • 20. Version Control git remote [app repository] master branch feature branch1 (remote) feature branch2 feature branch1 (local) feature branch1 commit push checkout Phân branch merge/ PR AớL PỗL DSS WD Vs WạR PộW repository , Wừ KDL QKdQK GHID OW Oc master và develop tạo branch để phát triển và tiến hành phát triển trên nhánh đó. Cơ bản là như sau: checkout/clone PộW UHSRVLWRU WUiQ Pd ORFDO UồL WLếQ KcQK GH ở ORFDO VD m commit , UồL push OiQ WUiQ VHU HU JọL Oc Remote, GướL Pd JọL Oc Local. D NKL UHOHDVH RQJ WKj Vs merge cR QKdQK master/develop. Nếu merge trực tiếp thì cần phải tạo Pull request UồL PớL PHUJH .m FdF 1OR SKdW WULểQ Vử GụQJ JLW QKư git-flow, github-flow, LệF Vử GụQJ IOR QcR Wp WK ộF cR T L Pn c WjQK WUạQJ Gự dQ Pc Vs WKD ổL WKHR KL FKỉQK VửD FpQJ PộW ILOH FpQJ PộW GlQJ FRGH Vs ả UD Conflict. ế ả UD FRQIOLFW WKj ừD NKmF ừD VửD WKnL
  • 21. Coding Standard ?URQJ WUườQJ KợS Fm QKLề OậS WUjQK LiQ GH FpQJ QKD Qế NKnQJ ưD UD PộW FK ẩQ FRGH FK QJ WKj PỗL QJườL FRGH PộW NLể GẫQ ếQ VR UFH FRGH UấW NKm ọF /R m PớL WKốQJ QKấW FK ẩQ LếW FRGH FKR FdF GH 2 LGHOLQH FKR FRGLQJ ượF JọL Oc Coding Standard, c FK ẩQ Pf QJ ồQ FuQJ Fm QKLề ORạL Fm FK ẩQ FK QJ c FK ẩQ ULiQJ .KẳQJ KạQ 3 WKj QổL WLếQJ Oc WLi FK ẩQ PSR-2 . Q EảQ Oc PỗL OậS WUjQK LiQ FầQ SKảL Wự JLdF Fố JắQJ LếW WKHR WLi FK ẩQ QKưQJ EởL j SKụ WK ộF cR Vự Wự JLdF Fố JắQJ FủD Fd QKeQ QiQ Qm NKnQJ FKắF FKắQ ổQ ịQK j ậ lL KỏL SKảL Fm PộW Kệ WKốQJ NLểP VRdW VR UFH FRGH WKHR FK ẩQ Qc 3 WKj Fm WKể GpQJ FK ẩQ php-cs-fixer, Ruby thì dùng chuẩn rubocop. KnQJ FKỉ Fm FRGLQJ VWDQGDUG Pc FlQ Fm FnQJ Fụ ể SKeQ WkFK VR UFH FRGH Static Code Analysis QữD. ALệF QKậQ ịQK FRGH QKư ậ Fm WKHR WLi FK ẩQ FRGH KD NKnQJ NKd Pơ Kồ QKưQJ ể FRGH Gễ ọF WKj ở KậW FdF GH ề Vử GụQJ F ốQ The Art of readable code, Gp Fm WKể EạQ FKR UằQJ NKnQJ FầQ SKảL QmL ươQJ QKLiQ WnL FuQJ Vs OcP QKư WKế KưQJ Lề T DQ WUọQJ QKấW Oc FdF GH ề Fm QKậQ WKứF QKư QKD ề FRGH FK ẩQ KD NKnQJ ế PỗL QJườL PộW WKmL T HQ FRGH ULiQJ WKj FKẳQJ Fm r QJKtD Jj Fả
  • 22. Object-oriented Object-oriented Programming OOP Oc PộW FdFK V QJKt ể QắP EắW KcQK L FủD Kệ WKốQJ QKư Oc Vự WươQJ WdF T D OạL JLữD FdF ốL WượQJ Qm Fm FdF ặF WKp Fơ EảQ Oc Encapsulation, Composition, inherit và delegationvPolymorphism ấ Oc FdL Pớ Jj ậ FKỉ Oc FdFK V QJKt WLệQ OợL NKL PọL QJườL SKdW WULểQ Pc WKnL Design Pattern Oc WổQJ KợS FdF FdF SKươQJ SKdS WKLếW Nế WốW QKấW FủD Object-oriented , Fm UấW QKLề SKươQJ SKdS WKLếW Nế KướQJ ốL WượQJ KnQJ Fm Pấ QJườL Fm WKể ậQ GụQJ /HVLJQ DWWHUQ Qc cR WKựF Wế NKL FRGH ộW WURQJ QKữQJ SKươQJ SKdS WKLếW Nế WKcQK FnQJ QKấW WURQJ FdF SKươQJ SKdS WKLếW Nế KướQJ ốL WượQJ KLệQ QD Oc MVC pattern. e Oc SKươQJ SKdS FKLD UD ) WKcQK SKầQ FKkQK Model View Controller, ượF ưD cR UấW QKLề Framework. Các framework MVC như là PHP: ZendFramework CakePHP Symfony Laravel... Ruby: Ruby on Rails Sinatra Java: Struts ?URQJ FdF View này Kầ KếW ề FKọQ Template Engine , JLảL SKdS ?HPSODWH 0QJLQH QổL WLếQJ Fm Smarty, Twig, Blade. KữQJ Q P JầQ e LệF Vử GụQJ IUDPH RUN ể SKdW WULểQ f WUở QiQ SKổ ELếQ QiQ FcQJ QKLề QJườL Fứ OầP WưởQJ Oc f KLể ề OậS WUjQK KướQJ ốL WượQJ e FuQJ Oc PộW QJ iQ QKeQ NKLếQ FKR QKữQJ QJườL Gp f Fm QKLề NLQK QJKLệP QKưQJ VNLOO ẫQ NKnQJ NKd OiQ ượF .m QKLề Or GR Pc QKữQJ FRGH T d SKứF WạS KD FRGH EẩQ FlQ ượF JọL Oc Spaghetti Code hay case, uncode.
  • 23. Test
  • 24. Test Có nhiều loại kiểm thử. Thông thường sẽ test theo trình tự sau: Unit Test ?HVW ợQ ị! Integration Test WHVW WkFK KợS! System Test WHVW Kệ WKốQJ! Acceptance Test WHVW FKấS QKậQ! ?UướF WLiQ Vs SKeQ WkFK i Fầ ể HP Test View Point QKư WKế QcR VD m OậS VFKHG OH OiQ Test Planning. Trong Test View Point NKnQJ FKỉ Fm WHVW i Fầ FKứF Q QJ Pc FlQ Fm WHVW QRQ I QWLRQ QKư Performance Test, Security Test. /ựD WUiQ i Fầ FKứF Q QJ ể WạR Test Spec/Test Case c WLếQ KcQK WHVW. Trong Test còn có rất nhiều loại test khác, được sử dụng tùy theo yêu cầu dự án. Ví dụ như: Regression Test (test hồi quy) để kiểm thử các chức năng có chạy ổn định không, Smoke Test để kiểm thử đại khái các chức năng chính có bị bất thường không, Walkthrough Test để kiểm thử sử dụng thử các chức năng đã hoàn thành theo yêu cầu dự án chưa, Monkey Test là kiểm thử dưới tư cách user ưD JLd WUị ầ cR EấW N c NLểP WUD HP ứQJ GụQJ ử Or UD VDR Có một tổ chức là ISTQB International Software Testing Qualification Boards! Vs FấS FKứQJ FKỉ Qc FKR , ?URQJ OtQK ựF WHVW WKj e Oc PộW FKứQJ FKỉ FK QJ ượF T ốF Wế FnQJ QKậQ Ở LFTV tôi nghĩ cũng sẽ tuyển QA bằng yêu cầu có chứng chỉ ISTQB Foundation chứ không cần test thêm gì cả.
  • 25. Test Test c Jj ,L WKựF KLệQx Unit Test LểP WUD PứF ơQ ị UT! ?HVW FdF ơQ ị Fm NkFK WKướF QKỏ QKư 1 QWLRQ c HWKRG ể dF QKậQ FKqQJ Fm DQJ FKạ qQJ NKnQJ ậS WUjQK LiQ Vs LếW WHVWFRGH ộ EDR SKủ WHVW ượF JọL Oc Coverage. Developer Integration Test LểP WUD WkFK KợS! LểP WKử WổQJ WKể FKứF Q QJ WkFK KợS f SKdW WULểQ HP Fm FKạ qQJ NKnQJ QA System Test LểP WUD PứF Kệ WKốQJ! Kd JLốQJ ớL PnL WUườQJ WKậW NLểP WKử WRcQ Eộ FKứF Q QJ Fm FKạ qQJ NKnQJ QA User Acceptance Test LểP WUD FKấS QKậQ FủD QJườL GpQJ! JườL GpQJ NLểP WUD SKầQ PềP Fm OcP qQJ ớL i Fầ QJKLệS ụ NKnQJ Customer Requirement Analysis KeQ WkFK i Fầ ! Requirement Definition ịQK QJKtD i Fầ ! Basic Design ?KLếW Nế Fơ EảQ! Specific Design ?KLếW Nế FKL WLếW! Coding Code Review Unit Test Integration Test System Test Acceptance Test
  • 26. Automation Test KL SKảL WHVW L WHVW OạL QKLề OầQ WKj FầQ WKựF KLệQ NLểP WKử Wự ộQJ LểP WKử Wự ộQJ FuQJ ượF NK ếQ NKkFK Vử GụQJ NKL SKdW WULểQ SKầQ PềP WKHR SKươQJ SKdS . ./ Dev. Servers Jenkins Web Hook Feed back Clone Push Static Code Analysis Unit Test UI Test Jenkins Vs T ảQ Or FdF H HQW FKẳQJ KạQ QKư S VK! WURQJ UHVSRVLWRU FủD JLW T D Webhook WLếQ KcQK WHVW Wự ộQJ T D Selenium, ? c FnQJ Fụ SKeQ WkFK FRGH WtQK WHVW SHUIRUPDQFH T D Jmeter c Apache Bench, QKậQ IHHGEDFN T D WRROFKDW QKư ChatWork c Slack. ?HVW ếQ PứF QcR WKj Wp WK ộF cR ịQK QJKtD FKấW OượQJ VảQ SKẩP ượF ảP EảR Nếu dùng github WKj Fm WKể Vử GụQJ UấW QKLề WRRO Pc NKnQJ FầQ WKnQJ T D HQNLQV e FKkQK Oc ư LểP OcP QiQ JLd WUị ượW EậF FủD github . Và do vậy giá của nó khá cao. . . .
  • 28. Various kind of servers Server Cloud On Premise AWS heroku Data Center Server Room qF EjQK WKườQJ WKj NKnQJ Fm ếQ WU FậS QKưQJ cR PpD JLdQJ VLQK WKj Vố WU FậS W QJ ếQ OầQ WKậW NKm WưởQJ WượQJ WjQK WUạQJ VHU HU OqF my ế GpQJ :Q UHPLVH WKj FầQ SKảL P D VHU HU UồL VHW WUướF ể ốL ứQJ cR QKữQJ OqF OượW WU FậS FDR EấW QJờ QKư GịS JLdQJ VLQK AừD WốQ WLềQ Pc FuQJ NKnQJ FKắF Oc Fm ảP EảR ốL ứQJ ượF NKnQJ KưQJ Qế GpQJ .OR G VHU HU WKj NKnQJ FKỉ FầQ WKLếW FKR PỗL PpD FDR LểP QKư JLdQJ VLQK Pc EjQK WKườQJ FuQJ KRcQ WRcQ ứQJ GụQJ WốW Ac NKnQJ Kề Je OfQJ SKk ? SH Ak Gụ
  • 29. Various kind of access .dF SKươQJ WKứF WU ềQ WLQ WUiQ VHU HU ượF JọL Oc SURWRFRO ỗL SURWRFRO WUiQ VHU HU Vs Fm FdF FổQJ cR ượF FKỉ ịQK Vố JọL Oc SRUW 2mL WLQ VVK FlQ ượF JọL Oc JmL WLQ Vố (( JườL T ảQ Or Pd FKủ Vs mQJ SRUW Pở SRUW KD WKD ổL Vố SRUW NKL FầQ WKLếW ế n r Pở SRUW Fm WKể Eị Nẻ NKdF cR SKd UốL KRặF Eị Nẻ WUộP ộW QKậS cR dQK FắS WKnQJ WLQ ALệF JLớL KạQ JmL WLQ JọL Oc Fire Wall. -jQK WKườQJ WKj Vs WKLếW OậS Fire wall cho mỗi đơn vị dịch vụ nhưng cũng có khi giới hạn truyền thông tin đi theo quốc gia giống như Great Fire Wall của Trung Quốc, SNS của Facebook c Twitter Protocol Default Port ỨQJ GụQJ ?K ậW QJữ OLiQ T DQ http 80 ,FFHVV EUR VHU WKnQJ WKườQJ https 443 f KmD FdF WKnQJ WLQ FầQ EảR PậW QKư WKnQJ WLQ Fd QKeQ NKL WU ềQ WLQ SSL SSL SURWRFRO, chứng chỉ SSL FTP 20, 21 SORDG GR QORDG ILOH ssh 22 ếW QốL cR VHU HU c OcP QKề LệF NKdF Command Line (cmd, cli) SMTP 23 DLO
  • 30. Fire Wall & Proxy Fire Wall chặn gói tin được truyền đến từ một đối tượng xác định hay chỉ cho phép nhận gói tin được truyền đến từ một đối tượng xác định. This is Hiroshi speaking. Can I talk to Ms. Hang?? Hiroshi san Hang san Fire Wall Không thể nói chuyện với Mr. Hiroshi Nguyen san Có thể nói chuyện với Mr.Nguyen This is Nguyen speaking. Can I talk to Ms. Hang??
  • 31. FireWall & Proxy Nếu gói tin bị FireWall FKặQ OạL EạQ Fm WKể DFFHVV ớL Wư FdFK NKdF ể WKnQJ T D ượF 1LUHBDOO ALệF DFFHVV GướL Wư FdFK NKdF ượF JọL Oc WKnQJ T D Proxy KD L iQ T D Proxy . Could you call Ms. Hang? Hiroshi san Hang san Fire Wall Không thể nói chuyện với Mr. Hiroshi Nguyen san Có thể nói chuyện với Mr.Nguyen OK, I got it. This is Nguyen speaking. Can I talk to Ms. Hang?? Yes, I'm here.
  • 32. NAT 2mL WLQ NKnQJ ượF WU ềQ WUựF WLếS ếQ ốL WượQJ kFK Pc ượF WU ềQ T D VHU HU WU QJ JLDQ NAT(Nguyen Anh Tuan Network Address Transfer), để tăng mức độ bảo mật. Cách này còn được gọi là Bastion server. Việc tiến hành cho gói tin ssh L T D VHU HU Bastion được gọi bằng nhiều cách khác nhau, như là ssh đa cấp, ssh tunnel, Port forward. Việc thiết lập qua server NAT ượF JọL Oc Route Table KnQJ SKảL j PụF kFK EảR PậW FuQJ Fm WUườQJ KợS ể SKeQ UD WừQJ HE VHU HU Kệ WKốQJ Vs QKậQ KcQJ ORạW FdF UHT HVW http/https rồi thiết lập proxy server. LểP NKdF VR ớL UR QmL ếQ OqF Qf Oc Qm NKnQJ SKảL EiQ SKkD VHU Pc Wừ SKkD VHU HU Hiroshi san Hang sanFire Wall NAT Server (Nguyen san) Hãy cho tôi nói chuyện với riêng Nguyen san thôi.
  • 33. Subnet Subnet Oc Kệ WKốQJ FKLD QKỏ HW RUN UD Aj WkQK EảR PậW KD ể WLệQ OợL KơQ WURQJ LệF SKeQ UROH QiQ QJườL WD SKeQ UD FdF V EQHW QKư ậ PụF kFK OqF ầ ốQ NKnQJ SKảL ậ QKưQJ WạP WKờL JLờ WnL FKưD QmL WớL! LD FKỉ Oc ịD FKỉ WUiQ LQWHUQHW Fm WKể FRL Qm QKư IORRU WKj WD Vs Fm IORRU EOLF FKR NKdFK c IORRU UL DWH GpQJ ULiQJ FKR QKeQ LiQ WURQJ FnQJ W Địa chỉ IP có cấu trúc như bên dưới: Public Subnet Private Subnet Network xxx.xxx.xxx.xxx QHW RUN V EQHW KRVW
  • 34. NACL & SG Việc thiết lập security cho Subnet được gọi là Network ACL , hay NACL (Network Access Control Lists ! ?UiQ ,. Vs WKLếW OậS Vơ OượF LệF FKR SKhS FdF JmL WLQ ượF WU ềQ L ỗL VHU HU Vs ượF WKLếW OậS VHF ULW Fụ WKể ULiQJ ALệF Pở VẵQ RUW FKưD Vử GụQJ UấW QJ KLểP QiQ Qm Vs WKLếW OậS FKỉ Pở RUW FầQ WKLếW .m WKể VHW QKLề O ậW FKR QiQ FlQ ượF JọL Oc Security Group. Public Subnet Private Subnet NACL Security Group(SG) Inbound Outbound
  • 35. Availability Zone NAT Web Server API Server XX server ế ặW WấW Fả VHU HU FpQJ PộW FKỗ WKj NKL SKdW VLQK ấQ ề Jj Vs UắF UốL WR QiQ FầQ SKảL EDFN S PộW FKỗ NKdF c WKựF KLệQ FK ểQ ổL WKủ FnQJ Wự ộQJ Trên AWS SKeQ UD ( NK ựF FKkQK Oc Region c Availability Zone AZ! Region là đặt server ở các vị trí khác nhau, chẳng hạn Tokyo và Oregon. Còn AZ thì sẽ đặt các server trong cùng một khu vực sao cho chúng không làm ảnh hưởng lên nhau. Các server của từng Region Vs NKdF QKD Cho đến ngày 1/12/2017! AWS Fm FdF HJLRQ North Virginia, Ohio, North Carolina, Oregon, Canada, Ireland, Frankfurt, London, Tokyo, Seoul, Singapore, Sydney, Mumbai, San Paulo ớL e AWS đã thoái lui khỏi thị trường Trung Quốc và Beijing Region đã không còn là Region thuộc dịch vụ của AWS tại trung Quốc nữa. AZ: a AZ: c AZ AZ AZ Region AZ AZ AZ Region AZ AZ AZ Region Region & Availability Zone AZ: a
  • 36. Load Balancer LB Web Server WEB Server WEB server ế Fm T d QKLề WU FậS cR FpQJ OqF PộW VHU HU Vs NKnQJ FKị WảL QổL qF m FầQ FK ẩQ Eị WKiP VHU HU NKdF Fm Fấ WUqF JLốQJ VHU HU KLệQ WạL ể JdQK EớW UHT HVW WớL 2ọL Oc FKLD WảL LệF ử Or Qc JọL Oc Load Balancer. Trên AWS thì gọi là ELB ( Elastic Load Balancer) hay là ALB(Application Load Balancer). Vì đã có ALB là version mới của ELB nên từ giờ không có lý do gì để chọn dùng ELB nhưng kể từ khi LB của AWS cũ rồi người ta chuyển qua gọi là ELB thì giờ đây phiên bản mới ALB lại thường được gọi theo cách quen thuộc là ELB. ế Oc RQ SUHPLVHV WKj FầQ SKảL JLả ịQK WKậW QKLề DFFHVV UồL FK ẩQ Eị VHU HU QKưQJ Qế Oc .OR G WKj Qm Fm WKể Wự QeQJ FấS VHU HU ể ốL ứQJ NKL FầQ WKLếW ALệF QeQJ FấS W QJ NKả Q QJ ốL ứQJ FủD VHU HU OiQ JọL Oc Scale out, hệ thống tự động tăng khả năng đối ứng khi hệ thống bị vượt ra ngoài điều kiện đối ứng đã định trước với chức năng của ELB được gọi là Auto Scaling , cái này thì vừa phải với túi tiền người dùng. Auto Scaling có thể được thiết lập cho một nhóm server Auto Scaling Group!w JRcL UD FuQJ Fm NKL Vs ử Or W QJ FườQJ G QJ OượQJ VHU HU c NKả Q QJ ử Or FKR Kệ WKốQJ FdL Qc JọL Oc Scale Up . .KLD WảL HU HU Fm FpQJ QộL G QJ -jQK WKườQJ WKj NKnQJ ụQJ ếQ QKưQJ NKL FầQ WKLếW Qm Vs W QJ NKả Q QJ ốL ứQJ OiQ FDOH R W!
  • 37. Various type of Servers ? SH ỨQJ GụQJ Ak Gụ 2KL FKq EC2 (Elastic Compute Cloud) HU HU WKnQJ WKườQJ Có thể tạo ra rất đơn giản từ AMI(Amazon Machin Image) RDS (Relational Database Service) /DWDEDVH Oracle, MySQL, PostgreSQL ElastiCache KVS(Key Value Store) .DVK Redis, Memcache Cash On Memory ,FFHVV QKDQK S3 (Simple Storage Service) File Storage Chỗ chứa file Tạo Bucket trong S3 NoSQL /DWDEDVH MongoDB ?ừQJ Pd WUiQ PỗL VHU HU ượF JọL Oc Instance (KD EC2 Instance ), PỗL LQVWDQFH Vs WKLếW OậS ặF ELệW KRặF Small KRặF Large
  • 38. Other services ?iQ VHU LFH ỨQJ GụQJ 2KL FKq SES Simple Email Service! 2ửL PDLO Oregon hay Virginia ?URQJ EC2 instance, lập SendMail c Postfix FuQJ ượF KMS Key Management Service! H Pf KmD IAM Identity and Access Management! ,FFR QW ?KLếW OậS JLớL KạQ T ềQ FKR WừQJ UHVR UFH JRcL DFFR QW ULiQJ FlQ WKLếW OậS IAM Role FKR VHU HU Code Commit ảQ Or HUVLRQ .m WKể T ảQ Or HUVLRQ FủD VR UFH .ầQ Fm , VPC Virtual Private Cloud! KmP FdF VHU HU WKcQK PộW Kết nối các VPC với nhau gọi là Peer Connect. Trong cùng một Region có thể kết nối được với nhau nếu Private IP NKnQJ g OiQ QKD
  • 39. Distribution Tool ?KLếW OậS WừQJ FdL WừQJ FdL QKư QKD UấW SKLềQ QiQ FKỉ FầQ Vử GụQJ (ả ấ( ể LếW ILOH WKLếW OậS WKựF KLệQ OệQK ể WdL KLệQ OạL Gễ GcQJ ?KLếW OậS JửL WLQ EdQ! Wự ộQJ Trường hợp tái hiện thiết lập toàn bộ VPC QHW RUN VHWWLQJ! WKj Vử GụQJ CloudFormation, WKLếW OậS WừQJ VHU HU ULiQJ LQVWDOO c VHWWLQJ DSS Eố WUk VR UFH FRGH! WKj Kầ QKư Vs Vử GụQJ Ansible và Chef. .ơ EảQ Oc Vs LếW VHWWLQJ FKR xml , yml, json. 2ọL Oc Template, Playhook, KD Cookbook, recipe.
  • 40. Những Command hay nghe nói đến ?iQ FRPPDQG ử GụQJ 2KL FKq yum /pQJ ể LQVWDOO rpm apt, apt-gety ế LQVWDOO Wừ VR UFHFRGH WKj FầQ SKảL WLếQ KcQK configure, UồL make. grep HDUFK VWULQJ nc QHWFDW! ượF Vử GụQJ ể dF QKậQ WU ềQ WKnQJ PạQJ .Kỉ ịQK RUW FủD ốL SKươQJ ể HP Fm WKể WU ềQ WKnQJ WLQ L ượF NKnQJ sudo Thực hiện như root SuperUserDo JRcL UD FuQJ Fm NKL Vử GụQJ FRPPDQG aws-cli chuyên dụng của AWS để install ?iQ .RPPDQG QcR QJKH WKấ KơL Uồ Uồ WKj FKắF FKắQ Oc GR OqF m QJườL WạR FRPPDQG f PệW UồL
  • 41. ?ừ QKdQK PDVWHU FắW QKdQK SKdW WULểQ UD UồL SKdW WULểQ WUiQ QKdQK m .K ẩQ FRGH Oc ( QiQ UH LH UấW PệW GR m WUướF NKL FRPPLW Kf FKHFN EằQJ SKS FV IL HU FKẳQJ KạQ D NKL SKdW WULểQ RQJ Kf WạR S OO UHT HVW OiQ QKdQK PDVWHU H LH OạL FRGH WKấ RN UồL PHUJH OiQ D NKL PHUJH cR QKdQK PDVWHU UồL WKj JLWK E Vs SKdW VLQK HEKRRN FKR MHQNLQV MHQNLQV GựD cR m Vs EdR FKR VHOHQL P ELếW NKởL ộQJ VHOHQL P FKạ ! ốL ớL PnL WUườQJ KLệQ WạL WKj FKạ Wừ PnL WUườQJ WHVW WUướF ế WấW Fả NKnQJ Fm ấQ ề Jj WKj Vs S OiQ PnL WUườQJ VWDJLQJ c WHVW WLếS ?HVW RQJ NKnQJ ấQ ề Jj WKj Fm dF QKậQ FủD : UồL GHSOR OiQ PnL WUườQJ SURG FWLRQ VD m DFFHVV OiQ PnL WUườQJ WKậW c WLếQ KcQK FKR RQJ QRWLILFDWLRQ T D FKDW RUN -cL O ệQ WậS
  • 42. - Kurabayashi Hiroshi CIO at LIFULL Tech Vietnam Co.,Ltd., HCMC @kura kura@lifull-tech.vn ế Eỏ L eP Lệ FủD Wừ WLếQJ ,QK JốF Qế Oc eP QJắQ Kf SKdW eP Uo ếQ eP WLếW F ốL FpQJ QKư ậ Oc WKcQK WLếQJ ,QK DWDNDQD UồL m