VPBank
Senior Backend Developer (Java, Microservice) - Hà Nội - TA174
Hà Nội
Khối Công nghệ thông tin
CMNV
Mô tả công việc
JOB PURPOSE
- Analyze business requirement, identify scope of work, propose solution, design, and develop identified Micro-service/API applications using Agile/Scrum model and supporting tool/technology/platform
- Provide L3 support on production.
MAJOR ACTIVITIES
- Analyze business requirement and identify scope of work related to Micro-service and API
- Define Micro-service and API solution to support for business requirement
- Create detail design for identified Micro-service
- Create specification for identified API
- Support to deploy Micro-service and API into production
- Support to resolve incident/problem on production
- Review and accept Micro-services design documents and source code delivered by partners.
- Research and improve the Micro-service and API development framework/standard
- Training for other team members.
REQUIREMENTS
Educational Qualifications: Bachelor’s degree in Computer Science, Engineering, Mathematics, or related field of study, or equivalent education, training & experience
Relevant Knowledge/ Expertise
- At least 5 years of software development experience
- At least 3 years design and develop Java-based application using Spring, Spring Boot, Oracle, MySQL, MongoDB
- At least 3 years design and develop Restful/Json API
- Experience with CI/CD tool and technologies like Jenkin, GIT, Ant, Maven, Gradle or equivalent.
- Experience with design and develop Micro-service/API using Domain-driven design pattern.
- Experience with design and develop event-driven and message-driven applications.
- Experience with application deployment using Docker/Container model
- Minimum 2 years of experience in the banking domain, preferably in online banking.
Skills
- Ability in English reading and writing (mandatory), and speaking, listening (preferable).
- Teamwork, careful, attention to detail, logical thinking
- Self-development.
- Communication, negotiation and problem solving
Relevant Experience
- Banking Domain experience
- Agile/Scrum experience.
BENEFITS & PERKS
- Attractive compensation package with competitive, performance-based salary and bonuses, totaling 14–18 months of income per year.
- Holiday and Tetr bonuses in accordance with the Bank’s prevailing policies.
- Preferential loan programs offered based on the Bank’s policy at each period.
- Enhanced annual leave entitlements aligned with job grade and position level.
- Full statutory insurance coverage, plus VPBank Care insurance tailored to employee grade and length of service.
- Opportunity to work at a pioneering Bank applying AI & ML to enhance business value across a diverse ecosystem including Banking, Finance, Securities, Insurance, and more.
- Career development in a leading data-driven environment, participating in large-scale big data projects and initiatives that continuously deliver added value to customers.
- Access to training programs aligned with the competency framework for each position.
Phân tích kỹ năng cần có
## Phân Tích Kỹ Năng Yêu Cầu
### 🔧 Hard Skills (Kỹ năng kỹ thuật)
**Bắt buộc (Must-have):**
| Nhóm kỹ năng | Yêu cầu cụ thể | Mức độ thành thạo |
|--------------|----------------|-------------------|
| Ngôn ngữ lập trình | Java (Core Java, Java 8+) | Chuyên sâu |
| Framework | Spring, Spring Boot, Spring Cloud | Chuyên sâu |
| Database | Oracle, MySQL, MongoDB | Trung bình - Cao |
| API Development | RESTful API, JSON | Chuyên sâu |
| Design Pattern | Domain-Driven Design (DDD) | Trung bình - Cao |
| Architecture | Micro-service, Event-driven, Message-driven | Chuyên sâu |
| DevOps Tools | Docker, Kubernetes, Jenkins, GIT | Trung bình - Cao |
| Build Tools | Maven, Gradle, Ant | Trung bình |
**Ưu tiên (Nice-to-have):**
| Nhóm kỹ năng | Ghi chú |
|--------------|---------|
| Cloud Platform | AWS, Azure, GCP (nếu có) |
| Message Queue | Kafka, RabbitMQ |
| API Gateway | Kong, Zuul |
| Monitoring | Prometheus, Grafana, ELK Stack |
| Security | OAuth2, JWT, Spring Security |
---
### 🧠 Soft Skills (Kỹ năng mềm)
1. **Kỹ năng phân tích nghiệp vụ** - Hiểu yêu cầu ngân hàng, đề xuất giải pháp phù hợp
2. **Kỹ năng giao tiếp** - Đặc biệt là đọc/viết tiếng Anh (bắt buộc), nói/lắng nghe (ưu tiên)
3. **Tư duy logic** - Thiết kế hệ thống phức tạp
4. **Kỹ năng giải quyết vấn đề** - Xử lý incident L3 trên production
5. **Kỹ năng teamwork** - Làm việc nhóm, review code đồng nghiệp
6. **Khả năng đào tạo** - Training thành viên khác
---
### 📜 Chứng chỉ gợi ý
| Chứng chỉ | Giá trị | Ghi chú |
|-----------|---------|---------|
| Oracle Certified Professional (OCP) | Cao | Liên quan Java/Database |
| AWS Certified Developer | Cao | Cloud trending |
| Spring Professional Certification | Trung bình | Thể hiện chuyên môn Spring |
| TOEIC 650+ | Bắt buộc | Yêu cầu tiếng Anh |
| ISTQB (Testing) | Trung bình | Nếu muốn mở rộng kiến thức |
---
### 📊 So sánh với thị trường
**Mức lương Senior Backend Dev tại VPBank & thị trường:**
| Cấp bậc | VPBank | Thị trường Hà Nội (2024) |
|---------|--------|--------------------------|
| Junior (1-2 năm) | - | 12-18 triệu |
| Mid (2-4 năm) | - | 18-30 triệu |
| Senior (4-7 năm) | Thỏa thuận | 30-50 triệu |
| Lead/Principal (7+ năm) | - | 50-70+ triệu |
*Note: Với yêu cầu 5+ năm kinh nghiệm + nghiệp vụ ngân hàng, mức lương kỳ vọng nên đặt ở 35-55 triệu/tháng, tổng package 14-18 tháng.*
Chuẩn bị phỏng vấn
## Hướng Dẫn Phỏng Vấn VPBank - Senior Backend Developer
### 📋 Quy Trình Phỏng Vấn
Thông thường tại VPBank cho vị trí IT senior sẽ có **3-4 vòng:**
| Vòng | Nội dung | Thời lượng | Người phỏng vấn |
|------|----------|------------|------------------|
| Vòng 1 | HR Screening (Phone/Online) | 20-30 phút | HR Recruitment |
| Vòng 2 | Technical Interview | 45-60 phút | Tech Lead / Senior Dev |
| Vòng 3 | System Design / Architecture | 60-90 phút | IT Manager / Architect |
| Vòng 4 | Final Round (Manager/Director) | 30-45 phút | Head of IT / CIO |
---
### ❓ Câu Hỏi Theo Từng Vòng
**Vòng 1 - HR Screening:**
- Giới thiệu bản thân và dự án gần nhất
- Tại sao muốn chuyển việc?
- Kỳ vọng lương và mức lương hiện tại?
- Hiểu biết về VPBank và lĩnh vực ngân hàng?
- Tình trạng bằng cấp, chứng chỉ tiếng Anh?
**Vòng 2 - Technical Interview:**
- **Java Core:** Threading, Collections, Stream API, Memory management, Garbage Collection
- **Spring Boot:** Dependency Injection, AOP, Transaction management, Exception handling
- **Micro-service:** Service discovery, API Gateway, Circuit breaker, Rate limiting
- **Database:** Indexing, Partitioning, Replication, ACID vs CAP
- **Coding:** Thuật toán cơ bản (sắp xếp, tìm kiếm, tree/graph traversal)
*Ví dụ câu hỏi thực tế:*
- "Thiết kế một hệ thống micro-service cho thanh toán trực tuyến"
- "Sự khác biệt giữa @Transactional và @Async trong Spring?"
- "Làm sao để handle distributed transaction trong micro-service?"
- "Explain Event Sourcing và khi nào nên dùng?"
**Vòng 3 - System Design:**
- Thiết kế hệ thống e-banking đơn giản
- Thiết kế API cho module chuyển khoản
- Nêu cách implement CQRS pattern
- Xử lý high availability và fault tolerance
- Database sharding strategy cho ngân hàng
**Vòng 4 - Manager Round:**
- Hướng phát triển sự nghiệp 3-5 năm tới
- Kinh nghiệm làm việc với business team
- Quan điểm về Agile/Scrum trong phát triển ngân hàng
- Handling conflict với team member/stakeholder
- Leadership và mentoring experience
---
### ✅ Tips Chuẩn Bị
**1. Ôn tập kỹ thuật:**
- Practice coding trên LeetCode (Easy/Medium) - tập trung String, Array, Tree
- Xem lại Spring Boot best practices và common pitfalls
- Chuẩn bị sample project để demo (nếu được)
**2. Nghiên cứu VPBank:**
- Tìm hiểu VPBank Digital Bank (VPBankNeo)
- Các sản phẩm công nghệ đang triển khai: AI, ML, Big Data
- Đọc bài phỏng vấn CTO/IT Head của VPBank
**3. Chuẩn bị câu hỏi cho interviewer:**
- Quy mô team hiện tại và cấu trúc team
- Technology stack hiện tại của hệ thống
- Cơ hội học hỏi và phát triển
- Thách thức kỹ thuật đang đối mặt
---
### 👔 Dress Code
- **Offline interview:** Business casual (áo sơ mi, quần âu/khaki)
- **Online interview:** Gọn gàng, nền sạch sẽ, áo sơ mi/camus
- VPBank là ngân hàng tư nhân năng động, không quá formal nhưng vẫn chuyên nghiệp
Lộ trình ôn thi
## Lộ Trình Ôn Tập & Chuẩn Bị
### 📚 Kiến Thức Nền Tảng Cần Ôn
**Phase 1: Java Core (Ngày 1-3)**
| Chủ đề | Trọng tâm | Tài liệu |
|--------|-----------|----------|
| OOP | Inheritance, Polymorphism, Encapsulation | Thinking in Java |
| Multithreading | Synchronized, Thread pool, Concurrent collections | Java Concurrency in Practice |
| Collections | ArrayList vs LinkedList, HashMap internal, TreeMap | Oracle Docs |
| Stream API | filter, map, reduce, parallel stream | Baeldung tutorials |
| JVM | Memory model, GC algorithms, Class loader | Oracle JVM documentation |
**Phase 2: Spring Framework (Ngày 4-6)**
| Chủ đề | Trọng tâm | Tài liệu |
|--------|-----------|----------|
| Spring Core | DI, IoC Container, Bean lifecycle | Spring Documentation |
| Spring Boot | Auto-configuration, Starter, Actuator | Spring Boot in Action |
| Spring Data | JPA, Repository pattern, Query methods | Baeldung Spring Data |
| Spring Security | Authentication, Authorization, JWT | Spring Security Guide |
| Spring Cloud | Config Server, Service Discovery, Gateway | Microservices with Spring Cloud |
**Phase 3: Micro-service Architecture (Ngày 7-10)**
| Chủ đề | Trọng tâm | Tài liệu |
|--------|-----------|----------|
| DDD | Entity, Aggregate, Bounded Context, Event Storming | Implementing DDD (Vaughn Vernon) |
| API Design | REST best practices, versioning, documentation | RESTful API Design (APIGEE) |
| Event-driven | CQRS, Event sourcing, Message broker | Building Event-Driven Microservices |
| Container | Docker basics, Docker Compose, Kubernetes intro | Docker Official Docs |
| CI/CD | Jenkins pipeline, Gitlab CI, Docker registry | Jenkins documentation |
**Phase 4: Nghiệp vụ Ngân hàng (Ngày 11-12)**
- Hiểu các khái niệm: Core Banking, E-banking, Payment Gateway
- Compliance & Security requirements trong ngân hàng
- Regulations về payment systems (NAPAS, SWIFT)
- High availability requirements cho banking systems
---
### 📖 Tài Liệu Tham Khảo
**Sách bắt buộc đọc:**
1. Clean Code - Robert C. Martin
2. Effective Java - Joshua Bloch
3. Microservices Patterns - Chris Richardson
4. Domain-Driven Design - Eric Evans
**Website/Tài liệu online:**
1. Baeldung.com - Spring & Java tutorials
2. Medium - Engineering at Meta (hay về system design)
3. Martin Fowler's Blog - Architecture patterns
4. Dzone.com - DevOps & Microservices
**Video Course gợi ý:**
1. Udemy: Spring Boot Microservices
2. Coursera: Cloud Computing Specialization
3. Pluralsight: Java Path
---
### 📅 Lộ Trình 2 Tuần Chuẩn Bị
| Ngày | Nội dung | Output |
|------|----------|--------|
| Day 1-2 | Java Core review + coding practice | Code 5 bài LeetCode |
| Day 3-4 | Spring Boot deep dive + thực hành | Mini project REST API |
| Day 5-6 | Micro-service patterns + DDD | Vẽ sơ đồ thiết kế |
| Day 7 | Database optimization + NoSQL | Query optimization examples |
| Day 8 | DevOps tools (Docker, Jenkins) | Deploy sample app |
| Day 9-10 | System design practice | Mock interview system design |
| Day 11 | Nghiên cứu VPBank + nghiệp vụ bank | Notes research |
| Day 12-13 | Behavioral prep + mock interview | Script trả lời STAR |
| Day 14 | Review all + rest | Ready! |
Tư vấn nghề nghiệp
## Lời Khuyên Sự Nghiệp - Senior Backend Developer tại VPBank
### 🚀 Lộ Trình Thăng Tiến
**Senior Backend Developer (3-5 năm kinh nghiệm)**
```
↓ Ứng tuyển vị trí này
↓
Tech Lead / Solution Architect (3-5 năm sau)
├── Quản lý technical direction
├── Architecture design
└── Mentoring junior devs
↓
Engineering Manager / IT Manager (5-8 năm)
├── Quản lý team 5-15 người
├── Project management
└── Stakeholder management
↓
Senior Manager / Director of Engineering (8+ năm)
├── Quản lý toàn bộ IT division
├── Định hướng chiến lược công nghệ
└── Báo cáo CIO
```
---
### 💰 Mức Lương Kỳ Vọng Theo Cấp Bậc
| Cấp bậc | Kinh nghiệm | Lương tháng (VND) | Package (14-18 tháng) |
|---------|-------------|-------------------|----------------------|
| Junior Dev | 1-2 năm | 12-18 triệu | 168-324 triệu |
| Mid Dev | 2-4 năm | 18-30 triệu | 252-540 triệu |
| Senior Dev | 4-7 năm | 30-50 triệu | 420-900 triệu |
| Lead/Architect | 7-10 năm | 50-70 triệu | 700-1.26 tỷ |
| Manager | 8-12 năm | 60-100 triệu | 840-1.8 tỷ |
**Với vị trí này:**
- Mức lương kỳ vọng: **35-50 triệu/tháng** (tùy kinh nghiệm thực tế)
- Total package: **490 triệu - 900 triệu/năm**
- Đàm phán tốt có thể đạt 55-60 triệu nếu có 6-7 năm kinh nghiệm + nghiệp vụ ngân hàng sâu
---
### 🎯 Kỹ Năng Cần Phát Triển Thêm
**Ngắn hạn (6-12 tháng đầu):**
| Kỹ năng | Tầm quan trọng | Cách học |
|---------|----------------|----------|
| Cloud (AWS/GCP) | Cao | AWS Certified Developer |
| Kubernetes | Cao | CKAD certification |
| Tiếng Anh speaking | Cao | IELTS 6.0+ / speaking club |
| Domain knowledge (banking) | Cao | Tự học + mentor |
**Dài hạn (2-3 năm):**
| Kỹ năng | Tầm quan trọng | Cách học |
|---------|----------------|----------|
| System Design | Rất cao | Xây dựng pet projects phức tạp |
| Leadership/Management | Cao | Tham gia project lead |
| Architecture patterns | Rất cao | Đọc sách + apply thực tế |
| Business acumen | Cao | Hiểu sâu nghiệp vụ ngân hàng |
---
### 📈 VPBank vs Các Ngân Hàng/Kỳ Vọng Khác
| Tiêu chí | VPBank | Tech company (FPT, Viettel) | Ngân hàng lớn (VCB, TCB) |
|----------|--------|----------------------------|--------------------------|
| Lương | Cao, thỏa thuận | Cạnh tranh | Trung bình |
| Tech stack | Hiện đại (AI, ML, Microservice) | Đa dạng | Đang chuyển đổi |
| Environment | Năng động, startup-like | Bộ phận khác nhau | Bảo thủ hơn |
| Career path | Rõ ràng, nhanh | Phụ thuộc công ty | Chậm nhưng ổn định |
| Work-life balance | Tùy period | Tùy dự án | Tốt hơn ngành IT |
---
### ⚠️ Lưu Ý Quan Trọng
1. **VPBank đánh giá cao nghiệp vụ ngân hàng** - Nếu chưa có kinh nghiệm banking, cần thể hiện khả năng học nhanh
2. **Performance-based** - Lương tăng theo hiệu suất, không chỉ theo thâm niên
3. **Fast-paced environment** - Cần chuẩn bị tinh thần làm việc với tốc độ cao
4. **Technology investment** - VPBank đang đầu tư mạnh vào AI/ML, cơ hội học hỏi công nghệ mới
Câu hỏi thường gặp
Mức lương Senior Backend Developer tại VPBank là bao nhiêu? Có thương lượng được không?
Mức lương vị trí này là Thỏa thuận theo JD. Với 5+ năm kinh nghiệm và yêu cầu nghiệp vụ ngân hàng, mức kỳ vọng nên đặt 35-50 triệu/tháng. Nếu có 6-7 năm kinh nghiệm + background ngân hàng tốt, có thể đàm phán lên 55-60 triệu. Package 14-18 tháng/năm là thực, nên hỏi rõ về cách tính bonus trong interview cuối. Tip: đừng để HR hỏi mức kỳ vọng trước, hãy để họ đưa offer trước rồi negotiate.
Tôi có 4 năm kinh nghiệm Java, không có kinh nghiệm ngân hàng. Có nên ứng tuyển không?
Có thể ứng tuyển nhưng cạnh tranh sẽ khó hơn. JD yêu cầu tối thiểu 2 năm kinh nghiệm banking domain - đây là điểm yếu của bạn. Tuy nhiên, nếu bạn có project liên quan đến fintech, payment gateway, hoặc hiểu về e-banking systems thì vẫn có cơ hội. Hãy chuẩn bị kỹ về việc thể hiện kiến thức banking tự học và đam mê với ngành. Đặc biệt, hãy nhấn mạnh khả năng học nhanh và adapt với môi trường mới.
Vòng phỏng vấn kỹ thuật VPBank khó không? Có thi coding trực tiếp không?
VPBank IT có tiếng là khắt khe về kỹ thuật, đặc biệt cho senior level. Vòng technical sẽ có: (1) Hỏi sâu về Spring Boot internals, (2) Thiết kế micro-service (3) Có thể có coding test online (30-60 phút). Tuy nhiên mức độ khó vừa phải, không khó bằng FAANG nhưng đòi hỏi hiểu sâu thực tế. Chuẩn bị: ôn Java concurrency, Spring transaction management, DDD concepts, và mock system design 2-3 bài. Đặc biệt chuẩn bị câu hỏi về production issues đã từng gặp.
Làm Senior Developer tại VPBank có áp lực không? Work-life balance thế nào?
Cá nhân chia sẻ thật: có áp lực nhưng không quá khủng khiếp. VPBank Digital đang phát triển mạnh nên deadline có thể sát, đặc biệt khi release tính năng mới. L3 support có rotation, có lúc phải on-call nhưng có compensation. Work-life balance tốt hơn nhiều công ty outsource IT. Điểm trừ: một số period cần OT khi có dự án lớn. Trade-off hợp lý nếu bạn muốn phát triển kỹ năng nhanh.
Tôi đang làm ở công ty outsource, muốn chuyển sang ngân hàng. Cần chuẩn bị gì?
Chuyển từ outsource sang ngân hàng là bước đi tốt. Điểm mạnh của bạn: kinh nghiệm đa dự án, đa công nghệ. Điểm cần bổ sung: (1) Hiểu nghiệp vụ ngân hàng - tự học về Core Banking, Payment, Compliance, (2) Code quality & documentation - ngân hàng đòi hỏi cao hơn về maintainability, (3) Tiếng Anh - bắt buộc đọc/viết tốt, (4) Tư duy long-term - ngân hàng cần người ổn định, không chase project. Hãy chuẩn bị câu chuyện về việc tại sao muốn chuyển sang banking và cam kết gắn bó.
Cơ hội thăng tiến tại VPBank IT như thế nào? Có rõ ràng không?
VPBank IT có cơ hội thăng tiến tốt hơn nhiều ngân hàng nhà nước vì cơ chế linh hoạt hơn. Lộ trình typical: Senior Dev (1-2 năm) → Tech Lead/Principal Dev (2-4 năm) → Manager. Đặc biệt, VPBank đang mở rộng mảng Digital/AI nên có nhiều vị trí mới. Điểm cần lưu ý: (1) Thăng tiến dựa trên performance rõ ràng, (2) Có career framework công khai, (3) Review 2 lần/năm với feedback cụ thể. Nếu bạn prove được value, thăng tiến nhanh hơn nhiều công ty tài chính khác.
VPBank có hỗ trợ học chứng chỉ, đào tạo không? Chi phí như thế nào?
Theo JD có đề cập: "Access to training programs aligned with the competency framework for each position". Thực tế, VPBank có: (1) Budget đào tạo hàng năm cho mỗi nhân viên IT (tùy level), (2) Hỗ trợ một phần chi phí chứng chỉ (AWS, Oracle, etc.), (3) Internal training từ senior/external experts, (4) Tech talk/hackathon nội bộ. Tuy nhiên, đừng kỳ vọng full sponsorship như các công ty product lớn. Bù lại, bạn được làm việc với production system thực tế - giá trị học hỏi rất cao.
Làm L3 support có vất vả không? Có được bù ca không?
L3 support là phần công việc quan trọng của JD - bạn cần chuẩn bị tâm lý. Thực tế: (1) Không phải ngày nào cũng có incident, nhưng khi có thì cần respond nhanh, (2) Thường có rotation schedule với team, không phải 24/7 một mình, (3) Compensation cho on-call tùy policy - hỏi rõ HR về điều này, (4) Kinh nghiệm L3 rất quý cho career - bạn hiểu sâu hệ thống và business impact. Nếu muốn trở thành Architect/Lead, đây là kỹ năng không thể thiếu.