Professional Documents
Culture Documents
Hello! My name is Nguyen Quoc Vu, and I would like to introduce myself as a Full-stack
developer. I have been a civil engineer for five years, and I created a Winform that connects the
APIs of construction software. Get information such as (coordinates, materials, and length of
elements) for construction engineers to check information and design drawings more
accurately than manually quickly. At Atman Company, I gained practical experience developing
web applications, creating efficient code, and working with databases. I grow in solving
complex problems and enjoy the logical thinking required in development. I also know front-
end development frameworks like HTML, CSS, and JavaScript libraries like Angular. Given a
chance, my technical expertise and a good mindset will enable me to make valuable
contributions to your company. Thank you for your listening.
Dạ chào anh, em xin tự giới thiệu bản thân! Em tên là Nguyễn Quốc Vũ. Em đã là kỹ sư xây
dựng được 5 năm và trong thời gian đó, em đã tạo Winform kết nối các API của phần mềm xây
dựng, lấy các thông tin như (tọa độ, vật liệu, chiều dài vật liệu xây dựng) để kỹ sư kiểm tra
thông tin và thiết kế bản vẽ chính xác hơn, nhanh hơn so với thủ công. Tại Công ty Atman, em
đã có được kinh nghiệm thực tế trong việc phát triển các ứng dụng web, tạo các thuật toán
hiệu quả và làm việc với các cơ sở dữ liệu, giải quyết các vấn đề phức tạp và vận dụng tư duy
logic cần thiết trong các dự án. Em phát triển front-end bằng cách sử dụng HTML, CSS và
JavaScript, Angular. Nếu có cơ hội, chuyên môn kỹ thuật và tư duy của mình sẽ giúp em có
những đóng góp có giá trị cho công ty anh.Cảm ơn anh đã lắng nghe.
Các project đã làm:
Trong thời gian em làm ở Atman, em từng tham gia 4 dự án như:
+ Posco là công ty chuyên sản xuất thép xây dựng. Sử dụng Netcore 3.1+ Angular 9, MySql
Database.Chủ yểu là training khách hàng
+ Orion là Công ty chuyên về bánh kẹo thực phẩm. Sử dụng Netcore 3.1+ Angular 9,MySql
Database
+ KMS Công ty chuyên gia công giày các nhãn hiệu Adidas, reebok. Sử dụng Java +
AngularJS, javascript, Oracle Database.Chủ yếu là maintain và testing
+ Pungkook là công ty sản xuất các sản phẩm túi xách như ba lô, túi dã ngoại, túi thể thao,
túi xách, hành lý. Sử dụng Netcore 3.1+ Angular 6, Oracle Database.
Tất cả dự án em đều làm việc nhóm, (Create, Read, Update, Delete). Đều quản lý source bằng
git.
Promise vs observable
Định Nghĩa
Promise và Observable giải quyết những vấn đề khác nhau trong việc xử lý tác vụ bất đồng bộ
và sự kiện trong JavaScript
Phân biệt:
Stored Procedure (Thủ tục lưu trữ):
Ưu điểm:
Hiệu suất: Stored procedure thường được biên dịch và lưu trữ trên server database, do đó nó
có thể được thực thi nhanh hơn so với việc gửi các câu lệnh SQL từ ứng dụng đến cơ sở dữ
liệu. Điều này giúp tăng hiệu suất và giảm thời gian đáp ứng.
Bảo mật: Stored procedure cho phép quản lý quyền truy cập và kiểm soát an toàn dữ liệu.
Người quản trị cơ sở dữ liệu có thể cấp quyền cho người dùng chỉ để thực thi stored procedure
mà không cần cấp quyền trực tiếp để truy cập vào các bảng dữ liệu.
Tái sử dụng: Stored procedure có thể được sử dụng lại trong nhiều ứng dụng và truy vấn khác
nhau, giúp tối ưu hóa và tiết kiệm thời gian lập trình.
Xử lý phức tạp: Stored procedure cho phép thực hiện các tác vụ phức tạp như xử lý dữ liệu,
kiểm tra điều kiện, và thực hiện nhiều câu lệnh trong một lần gọi.
Nhược điểm:
Khả năng khó bảo trì: Stored procedure có thể trở nên phức tạp và khó bảo trì khi kích thước
và số lượng stored procedure tăng lên. Cần có quy tắc tốt để quản lý và theo dõi stored
procedure.
Phiên bản và sự tương thích: Sự thay đổi cấu trúc của stored procedure có thể tác động đến
các ứng dụng sử dụng nó. Khi cần thay đổi stored procedure, việc đảm bảo tính tương thích và
quản lý phiên bản là quan trọng.
Function (Hàm):
Ưu điểm:
Modular: Function cho phép viết code modul và tái sử dụng trong nhiều truy vấn và ứng dụng
khác nhau. Điều này giúp giảm sự trùng lặp và tăng tính khả năng sử dụng lại code.
Truy vấn dữ liệu: Function có thể được sử dụng trong các câu lệnh SELECT để thực hiện tính
toán và truy vấn dữ liệu, cho phép trả về kết quả dựa trên giá trị đầu vào.
Độc lập với nền tảng: Function có thể được sử dụng trên nhiều hệ quản trị cơ sở dữ liệu khác
nhau mà không cần sửa đổi nhiều.
Nhược điểm:
Hiệu suất: Trong một số trường hợp, sử dụng function có thể gây ra hiệu suất kém hơn so với
việc sử dụng các câu lệnh SQL trực tiếp. Function có thể tạo ra độ trễ do việc truy cập dữ liệu
qua các lớp trung gian.
Giới hạn tính năng: Function có giới hạn về tính năng và khả năng xử lý so với stored
procedure. Chẳng hạn, function không thể thực hiện các câu lệnh DML (Data Manipulation
Language) như INSERT, UPDATE hoặc DELETE dữ liệu.
Tại sao dùng func không? Tại sao dùng procedure không?
Sử dụng Stored Procedure khi:
Thực hiện các thao tác phức tạp: Khi cần thực hiện các tác vụ xử lý phức tạp, kiểm tra điều
kiện, hoặc thực hiện nhiều câu lệnh SQL trong một lần gọi, stored procedure là lựa chọn phù
hợp. Stored procedure có khả năng xử lý dữ liệu phức tạp và thực hiện các tác vụ logic.
Quản lý giao dịch: Khi cần thực hiện các hoạt động quản lý giao dịch như bắt đầu, kết thúc giao
dịch, quay lại điểm khôi phục, hoặc xác nhận các thay đổi dữ liệu, stored procedure có thể hỗ
trợ quản lý giao dịch một cách linh hoạt và an toàn.
Cung cấp giao diện API: Stored procedure có thể được sử dụng để tạo ra giao diện API cho ứng
dụng. Bằng cách thực thi stored procedure, các ứng dụng khác có thể gọi và tương tác với cơ
sở dữ liệu một cách an toàn và kiểm soát.
Ý anh Điệp
những library build sẵn. chỉ biên dịch một lần.
sau đó input output thực thi thui, không cần build nữa nên tốc độ nhanh, cải thiện
performance
func thủ tục hàm trong sql giúp cho mình tính toán.( trả về một giá trị, table...) THường người
ta kết hợp cả 2 fuc, proc
trong proc có thể gọi một số func để tính ngày lương, ngày nghỉ
Index là gì ?
Định nghĩa
Index chỉ mục trong sql. giống như mục lục của một danh sách
quay lại structure của database. có bản có nhiều record thì select một giá trị nào đó, phải đi
duyệt hết mất thời gian. nên dùng kỹ thuật đánh index để tăng performance lên
Trong một cuốn sách, cần kiến thức gì thì chỉ cần vô chỉ mục đó. Index cũng vậy, nó là một key
đại diện cho data trong đó
có nhiều loại index:
index khóa chính (cluster index)
khóa ngoại(non cluster index)
unique index (như số cmnd, sdt thể hiện sự duy nhất)
Ví dụ kể trong dự án kms.
có bảng data gần 20tr record. mà search thông tin không có index thì mất performance là 8s.
sau khi đánh index còn dưới 1s
khi dùng index này lưu ý. Thứ tự rất quan trọng ảnh hưởng tới performance.
Ví dụ search theo mã sản phẩm (name) một cặp index khi đổi query
Khi nào đi làm được ? Nếu đậu thì đi làm ngay hoặc đầu tháng đi làm được ( đang available)
có hỏi thì mới trả lời
kể react là library của facebook, những dự án em đang làm là angular, có dùng javascript.
Em có tìm hiểu và làm một số demo về reactjs ( dùng cho web), reactnative dùng cho mobile
trong react có 2 cái chính: properties, state.
Từ phiên bản 16.8 thì có thêm tính năng Hook. như use state, memo, context, effect.
clone đẩy lên github