#97 - What is Software Architecture?
Vào chiều thứ 7 vừa qua, Webinar Từ Việt Nam đến Silicon Valley đã kết thúc khá thành công với sự tham gia của hơn 200 thính giả và mang lại rất nhiều thông tin bổ ích. Tuy nhiên nếu bạn chưa kịp tham gia cũng đừng lo lắng, bạn vẫn có thể xem lại toàn bộ chương trình tại đây.
Trong tuần trước, Grokking đã phối hợp cùng Tiki tổ chức Techtalk #35: Eficient Spellchecking. Buổi techtalk đã thu hút được sự quan tâm và chú ý của đông đảo các bạn lập trình viên.
Các bạn có thể xem lại slide của tác giả Sergey Bochenkov (Head of Search @ Tiki) tại đây.
What is Software Architecture? — 8thlight.com
Trong webinar Từ Việt Nam đến Silicon Valley vừa qua, một trong những yếu tố mà các công ty hàng đầu thế giới quan tâm khi tuyển dụng là Architecture Design, kiến thức này thể hiện phần lớn sự khác biệt giữa 1 kỹ sư phần mềm tập sự và người có kinh nghiệm. Vậy architecture là gì? Bài viết sau sẽ đưa ra 1 số định nghĩa, kèm theo 1 ví dụ mà tác giả đã áp dụng vào dự án thực tế của mình.
Những bài viết hay
Micro Frontend Architecture: Replacing a Monolith from the Inside Out — levelup.gitconnected.com
Làm việc với legacy code là điều không mấy dễ chịu, đặc biệt là với những hệ thống frontend cũ (xài template server-side rendering truyền thống). Trong bài viết, tác giả Zack Jackson đã mô tả quá trình chuyển đổi và cách giải quyết các vấn đề gặp phải khi migrate legacy frontend sang hệ thống micro-frontend mới.
Using API Gateways to Facilitate Your Transition from Monolith to Microservices — blog.getambassador.io
Kiến trúc microservices đem lại rất nhiều ưu điểm như chia nhỏ ứng dụng giúp dễ thay đổi, nâng cấp, giảm sự lệ thuộc giữa các modules, dễ scale...
Tuy nhiên, hầu hết hướng tiếp cận microservices hiện tại là dạng migrate từ monolithic application sang microservice-base application. Nếu không làm cẩn thận và không có đường hướng rõ ràng thì team rất dễ rơi vào những cơn ác mộng kinh hoàng.
Sản phẩm của người Việt
Proxyman: Từ side project thành full-time business — thefullsnack.com
Ban đầu Proxyman là 1 tool cá nhân để giải quyết các ức chế khi sử dụng những tool có sẵn trên thị trường. Sau 18 tháng, tác giả Nghĩa Trần đã phát triển nó trở thành một sản phẩm SaaS thu hút khoảng 4k monthly users và khoảng 250-350 daily users, chỉ 1-2% trong số đó sẵn sàng chi tiền ra mua license hàng tháng nhưng cũng đem về doanh thu thụ động bằng với 1 full-time job. Hãy cùng lắng nghe những chia sẻ hết sức thú vị của tác giả ứng dụng trên qua bài phỏng vấn này nhé.
Sách hay nên đọc
Introduction to Information Retrieval — nlp.stanford.edu
Sách về Information Retrieval (IR), cực kỳ chi tiết về các kỹ thuật trong tìm kiếm thông tin nổi bật như Vector Space Model, đánh giá hệ thống IR, Feedback, Text classification, Web search, ...
Code & Tools
Introducing ksqlDB — www.confluent.io
ksqlDB là một loại database hướng tới việc streaming data dựa trên truy vấn SQL. Nó sử dụng kafka hay 1 RDBMS khác làm nguồn cung cấp dữ liệu. Giúp đồng bộ các dữ liệu cần streaming tới application. Ngoài ra việc cung cấp 2 loại query là pull/push cũng giúp đơn giản hóa việc xây dựng & kiến trúc tầng ứng dụng cần tính real-time.
cdr/code-server: Run VS Code on a remote server — github.com
Setup một VSCode Remote Server, giúp bạn có thể code từ bất kì đâu chỉ với một trình duyệt web, không phải lo về environment/tool setup.
jiahaog/nativefier: Make any web page a desktop lapplication — github.com
Biến bất kì website nào trở thành native desktop app chỉ bằng một dòng lệnh.
This week sponsor
KMS Technology
Thành lập năm 2009 với trụ sở chính tại Atlanta (US), KMS Technology cung cấp 3 dịch vụ chính: Gia công phần mềm (Software Outsourcing), đầu tư & phát triển sản phẩm công nghệ (Tech-Startup incubator), tư vấn dịch vụ giải pháp kỹ thuật. Với đội ngũ hơn 1000 nhân viên, KMS hướng đến khách hàng toàn cầu, từ các công ty startup đến các tập đoàn công nghệ lớn. Một số sản phẩm từ KMS đã được tín nhiệm trên thị trường thế giới: QASymphony, Katalon Studio, Kobiton. KMS Technology xây dựng một nơi làm việc năng động sáng tạo, chọn con người làm nền tảng văn hoá, nhiều năm liên tiếp nằm trong danh sách các nơi làm việc tốt nhất tại Việt Nam và Atlanta (Mỹ).
Góc tuyển dụng
Từ nay đến tháng 12/2019, các bạn engineer sẽ nhận được 1 tháng lương thưởng khi gia nhập KMS với các vị trí sau: http://bit.ly/KMS-bonus
Quote
Theory is when you know something, but it doesn’t work. Practice is when something works, but you don’t know why. Programmers combine theory and practice: Nothing works and they don’t know why.
- Unknown