SlideShare a Scribd company logo
1 of 15
Download to read offline
Modern DevOps Workflow
to increase developer’s productivity & quality
Phi Huynh
R&D Manager
NashTechVietnam
Coder thời hiện đại (2017)
DevOps là gì
DevOps và Agile
Continuous Delivery - ứng dụng và khó khăn gặp phải
DevOps Workflow ứng dụng thực tế ở
Agenda
Demo thực tế & thảo luận mở
Coder thời hiện đại (2017)
Người khác nghĩ…
Coder thời hiện đại (2017)
Thực tế là …
Ai trong chúng
ta cũng đã từng
như vậy!?
DevOps là gì?
Developers Operators
DevOps là gì?
Developers Operators
QA
DevOps
DevOps là gì?
Tools
Automation
Access rights
Teams
Communication
Understanding
Integration
Relationship
DevOps is a culture and mindset for
collaborating and communicating
between developers and operations
DevOps và Agile
Agile làm nhanh, nhưng phải làm như thế nào? => KHÓ!!!
Phải cảm ơn Agile, vì có Agile mới có DevOps
DevOps là bệ phóng cho Agile, it’s true!!!
…
DevOps workflow ở NashTech
DevOps
workflow
DEVTOOLS
.NET / Java / FE / PHP/ Mobile …
SOURCE CONTROL (DVCS)
SVN / GITLAB / VSTS / GitlabEnterprise,
GITHUB
Continuous Integration
TeamCity, JENKINS, VSTS, Docker
TEST SUITE
.NET / Java / FE / PHP/ Mobile
Continuous Deployment
.NET / Java / PHP / FE / Mobile
Requirement
• Versioning
• Approval process
• Define pipeline
• Cloud support
END-TO-ENDTESTS
- Selenium, SoapUI, …
MONITORING
New Relic / AppDynamics
Azure AppInsights, …
PLANNING
JIRA, GITLAB, VSTS, GITHUB
COLLABORATION
MS Team / Email / Slack
Confluence / Gitter / Slack
Yêu cầu tối thiểu
• Unit test runner
• Code coverage
• Code analysis
• Đo performance
Requirements
• Notifications
• DVCS Integration
• JIRA Integration
Yêu cầu tối thiểu
• Review code
• Kết nối với JIRA
Continuous feedback
Các công cụ không tương tác tốt với JIRA (ví dụ: SVN, GIT…)
Chúng tôi không thực sự có tool review code hiệu quả
Quá nhiều test case bằng tay (security, performance, e2e tests, …)
Nhóm không thực sự dùng tools một cách hiệu quả
Vẫn ít áp dụng code analysis & test code coverage
Các khó khăn khi áp dụng
DevOps Workflow ở
DevOps flow approach
Code /Tasks
Gitlab or
Other providers
Docker cluster (Linux container-based) on ACS
CI Pipeline (build / test)
TeamCity
Server
TeamCity
Agents
Test DB
Server
Sonarqube
selenium
CD Pipeline (DEV / UAT / PROD)
Identity
Server
StepOne’s
API
StepOne
Frontend
New app
Docker node 1 Docker node 2 Docker node n…
StepOne
Database
Nginx
proxies
Run on Microsoft Azure Container Service or On-premises
commit trigger
Slack
Continuous Feedback
Demo thôi !!!
THANK YOU
www.nashtechglobal.com

More Related Content

Similar to DevOps flow to improve developer's productivity & quality

ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
ggggggggggggggggggggggggggggggggggggggggggggggggggg
HngPhmTh35
 
Code Refactoring: Thay đổi nhỏ - Lợi ích lớn
Code Refactoring: Thay đổi nhỏ - Lợi ích lớnCode Refactoring: Thay đổi nhỏ - Lợi ích lớn
Code Refactoring: Thay đổi nhỏ - Lợi ích lớn
Nhật Nguyễn Khắc
 

Similar to DevOps flow to improve developer's productivity & quality (20)

Code Camp #1
Code Camp #1Code Camp #1
Code Camp #1
 
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileVai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
 
ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
ggggggggggggggggggggggggggggggggggggggggggggggggggg
 
Serverless là gì và học gì để làm việc với serverless?
Serverless là gì và học gì để làm việc với serverless?Serverless là gì và học gì để làm việc với serverless?
Serverless là gì và học gì để làm việc với serverless?
 
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo AgileỨng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
Ứng dụng mạng Nơ-ron nhân tạo phát triển phần mềm theo Agile
 
Cnpm nangcao
Cnpm nangcaoCnpm nangcao
Cnpm nangcao
 
AppViewX CERT+ Presentation for Enduser.pdf
AppViewX CERT+ Presentation for Enduser.pdfAppViewX CERT+ Presentation for Enduser.pdf
AppViewX CERT+ Presentation for Enduser.pdf
 
Gapo mobile apps at scale
Gapo mobile apps at scaleGapo mobile apps at scale
Gapo mobile apps at scale
 
Tài liệu đào tạo Scrum
Tài liệu đào tạo ScrumTài liệu đào tạo Scrum
Tài liệu đào tạo Scrum
 
Bao cao wesite bán giày.docx
Bao cao wesite bán giày.docxBao cao wesite bán giày.docx
Bao cao wesite bán giày.docx
 
Itlc2015
Itlc2015Itlc2015
Itlc2015
 
Vận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tếVận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tế
 
Bạn cần chuẩn bị gì khi đi phỏng vấn vị trí DevOps?
Bạn cần chuẩn bị gì khi đi phỏng vấn vị trí DevOps?Bạn cần chuẩn bị gì khi đi phỏng vấn vị trí DevOps?
Bạn cần chuẩn bị gì khi đi phỏng vấn vị trí DevOps?
 
SCRUM căn bản
SCRUM căn bảnSCRUM căn bản
SCRUM căn bản
 
Software Stack là gì.pdf
Software Stack là gì.pdfSoftware Stack là gì.pdf
Software Stack là gì.pdf
 
Mobile group
Mobile groupMobile group
Mobile group
 
Code Refactoring: Thay đổi nhỏ - Lợi ích lớn
Code Refactoring: Thay đổi nhỏ - Lợi ích lớnCode Refactoring: Thay đổi nhỏ - Lợi ích lớn
Code Refactoring: Thay đổi nhỏ - Lợi ích lớn
 
Kien thuc Tuyen dung IT 2023.pdf
Kien thuc Tuyen dung IT 2023.pdfKien thuc Tuyen dung IT 2023.pdf
Kien thuc Tuyen dung IT 2023.pdf
 
Agile Scrum for your startup
Agile Scrum for your startupAgile Scrum for your startup
Agile Scrum for your startup
 

More from Phi Huynh (6)

Azure Network and Infrastructure
Azure Network and InfrastructureAzure Network and Infrastructure
Azure Network and Infrastructure
 
Azure App Modernization
Azure App ModernizationAzure App Modernization
Azure App Modernization
 
Azure network and infrastructure
Azure network and infrastructureAzure network and infrastructure
Azure network and infrastructure
 
NashTech - Azure Application Insights
NashTech - Azure Application InsightsNashTech - Azure Application Insights
NashTech - Azure Application Insights
 
NashTech - Azure IoT Solutions on Microsoft Azure
NashTech - Azure IoT Solutions on Microsoft AzureNashTech - Azure IoT Solutions on Microsoft Azure
NashTech - Azure IoT Solutions on Microsoft Azure
 
Docker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode IntroductionDocker Networking & Swarm Mode Introduction
Docker Networking & Swarm Mode Introduction
 

DevOps flow to improve developer's productivity & quality

  • 1. Modern DevOps Workflow to increase developer’s productivity & quality Phi Huynh R&D Manager NashTechVietnam
  • 2. Coder thời hiện đại (2017) DevOps là gì DevOps và Agile Continuous Delivery - ứng dụng và khó khăn gặp phải DevOps Workflow ứng dụng thực tế ở Agenda Demo thực tế & thảo luận mở
  • 3. Coder thời hiện đại (2017) Người khác nghĩ…
  • 4. Coder thời hiện đại (2017) Thực tế là …
  • 5. Ai trong chúng ta cũng đã từng như vậy!?
  • 7. DevOps là gì? Developers Operators QA DevOps
  • 8. DevOps là gì? Tools Automation Access rights Teams Communication Understanding Integration Relationship
  • 9. DevOps is a culture and mindset for collaborating and communicating between developers and operations
  • 10. DevOps và Agile Agile làm nhanh, nhưng phải làm như thế nào? => KHÓ!!! Phải cảm ơn Agile, vì có Agile mới có DevOps DevOps là bệ phóng cho Agile, it’s true!!! …
  • 11. DevOps workflow ở NashTech DevOps workflow DEVTOOLS .NET / Java / FE / PHP/ Mobile … SOURCE CONTROL (DVCS) SVN / GITLAB / VSTS / GitlabEnterprise, GITHUB Continuous Integration TeamCity, JENKINS, VSTS, Docker TEST SUITE .NET / Java / FE / PHP/ Mobile Continuous Deployment .NET / Java / PHP / FE / Mobile Requirement • Versioning • Approval process • Define pipeline • Cloud support END-TO-ENDTESTS - Selenium, SoapUI, … MONITORING New Relic / AppDynamics Azure AppInsights, … PLANNING JIRA, GITLAB, VSTS, GITHUB COLLABORATION MS Team / Email / Slack Confluence / Gitter / Slack Yêu cầu tối thiểu • Unit test runner • Code coverage • Code analysis • Đo performance Requirements • Notifications • DVCS Integration • JIRA Integration Yêu cầu tối thiểu • Review code • Kết nối với JIRA Continuous feedback
  • 12. Các công cụ không tương tác tốt với JIRA (ví dụ: SVN, GIT…) Chúng tôi không thực sự có tool review code hiệu quả Quá nhiều test case bằng tay (security, performance, e2e tests, …) Nhóm không thực sự dùng tools một cách hiệu quả Vẫn ít áp dụng code analysis & test code coverage Các khó khăn khi áp dụng DevOps Workflow ở
  • 13. DevOps flow approach Code /Tasks Gitlab or Other providers Docker cluster (Linux container-based) on ACS CI Pipeline (build / test) TeamCity Server TeamCity Agents Test DB Server Sonarqube selenium CD Pipeline (DEV / UAT / PROD) Identity Server StepOne’s API StepOne Frontend New app Docker node 1 Docker node 2 Docker node n… StepOne Database Nginx proxies Run on Microsoft Azure Container Service or On-premises commit trigger Slack Continuous Feedback