Senior Java Developer (Corebanking) - TA171
Mô tả công việc
- Chịu trách nhiệm thực hiện phát triển các yêu cầu có tích chất phức tạp cao và liên quan đến nhiều hệ thống theo đúng kiến trúc phê duyệt và tài liệu đặc tả nghiệp vụ đã được phân tích.
- Tham gia tư vấn kỹ thuật với bộ phân phân tích BA/SA cùng với nghiệp vụ để có thể tối ưu nguồn lực và thời gian phát triển.
- Đưa ra kế hoạch triển khai cho từng CR/Initiatives có tính chất phức tạp cao và có sự tích hợp của nhiều hệ thống backends là corebanking trong yêu cầu BRD sẽ được triển khai trên hệ thống mình quản lý.
- Thực hiện phát triển đúng timeline đã được xậy dựng trên từng yêu cầu phát triển CR/Inititatives đươc giao bởi team lead.
Kiểm tra và đảm bảo các chức năng được phát triển theo đúng thiết kế đã được liệt kê trong SRS, FSD được cung cấp bởi BA/SA.
- Cập nhật và lưu trữ sourceCode trên hệ thống Gritlabs
- Thực hiện viết tài liệu đặc tả phát triển theo các tài liệu phân tích SRS, FDS và tài liệu kiến trúc cho từng module của hệ thống và cập nhật lên hệ thống JIR , Confluence.
- Thực hiện viết tài liệu triển khai và danh mục thực hiện trên checklist khi triển khai lên prodcution.
- Thực hiên chia sẽ kinh nghiệm phát triển cho các thành viên trong cùng hệ thống với tần suất 1 lần /quý.
Yêu cầu ứng viên
Trình độ đào tạo
Đại học in Công nghệ thông tin or Khoa học máy tính
Phân tích kỹ năng cần có
Phân tích kỹ năng cho vị trí Senior Java Developer (Corebanking) - VPBank
🎯 Tổng quan vị trí
Đây là vị trí Senior trong Khối Công nghệ thông tin của VPBank, làm việc trực tiếp trên hệ thống Corebanking — hệ thống "trái tim" xử lý giao dịch, tài khoản khách hàng, tiền gửi, tín dụng... của ngân hàng. Đây là mảng rất ít người làm được và được trả lương cao trong ngành.
---
🔧 Hard Skills (Kỹ năng cứng) — BẮT BUỘC
1. Nền tảng Java chuyên sâu
| Kỹ năng | Mức yêu cầu | Ghi chú |
|---|---|---|
| Java Core (OOP, Collection, Concurrency, Stream API) | ⭐⭐⭐⭐⭐ | Phải vững, là nền tảng mọi thứ |
| Java 8+ (Lambda, Functional Interface, Optional, Date/Time API) | ⭐⭐⭐⭐⭐ | Gần như mặc định |
| JVM tuning, Garbage Collection, Memory profiling | ⭐⭐⭐⭐ | Rất cần cho corebanking xử lý transaction nặng |
| Exception handling, Logging best practices | ⭐⭐⭐⭐⭐ | Hệ thống tài chính yêu cầu xử lý lỗi cực kỳ cẩn thận |
| Multi-threading, Synchronization, Lock | ⭐⭐⭐⭐ | Corebanking thường phải xử lý concurrent cao |
2. Framework & Công nghệ thường gặp trong Corebanking
- Spring Framework (Core, Boot, MVC, Data, Security, Batch) — ⭐⭐⭐⭐⭐
- Hibernate / JPA — quản lý ORM, ⭐⭐⭐⭐
- Microservices (Spring Cloud, RESTful API, gRPC, Message Queue — Kafka/RabbitMQ) — ⭐⭐⭐⭐
- Design Patterns (Builder, Factory, Strategy, Observer, Singleton) — ⭐⭐⭐⭐⭐
3. Database & Dữ liệu
| Công nghệ | Mức yêu cầu | Ghi chú |
|---|---|---|
| SQL nâng cao (Oracle/PostgreSQL/MySQL) | ⭐⭐⭐⭐⭐ | Corebanking hay dùng Oracle |
| Stored Procedure, Trigger | ⭐⭐⭐⭐ | Một số hệ thống core cũ vẫn cần |
| Index, Query optimization, Explain plan | ⭐⭐⭐⭐⭐ | Hệ thống tài chính tối ưu query là sống còn |
| Transaction isolation level, Deadlock handling | ⭐⭐⭐⭐⭐ | Đặc biệt quan trọng với corebanking |
| NoSQL (MongoDB, Redis) | ⭐⭐⭐ | Bổ trợ |
4. DevOps & Công cụ
- Git/GitLab/Bitbucket (VPBank dùng hệ thống riêng tên Gritlabs) — ⭐⭐⭐⭐⭐
- JIRA, Confluence — viết tài liệu trên đây, ⭐⭐⭐⭐⭐
- CI/CD (Jenkins, GitLab CI) — ⭐⭐⭐⭐
- Docker, Kubernetes — ⭐⭐⭐⭐
- Linux command line, Shell script — ⭐⭐⭐⭐
- Monitoring (Prometheus, Grafana, ELK) — ⭐⭐⭐
5. Kiến thức đặc thù ngân hàng (BẮT BUỘC nếu muốn nổi bật)
- Nghiệp vụ Corebanking: tiền gửi, tiết kiệm, cho vay, thanh toán, EOD (End of Day), BOD (Begin of Day)
- Quy trình batch processing (chạy batch cuối ngày rất quan trọng)
- GL (General Ledger), Settlement, Clearing
- Chuẩn ISO 8583, SWIFT messages (nếu làm payment)
- PCI DSS, Basel II/III (kiến thức quy định tài chính)
---
🤝 Soft Skills (Kỹ năng mềm)
| Kỹ năng | Lý do cần |
|---|---|
| Tư duy phân tích & giải quyết vấn đề | Corebanking có yêu cầu phức tạp, multi-system |
| Khả năng tư vấn kỹ thuật | JD yêu cầu tư vấn với BA/SA và nghiệp vụ |
| Viết tài liệu kỹ thuật tốt | JD yêu cầu viết trên JIRA/Confluence thường xuyên |
| Quản lý thời gian & deadline | Cam kết timeline với team lead |
| Chia sẻ kiến thức | JD yêu cầu chia sẻ kinh nghiệm 1 lần/quý |
| Tiếng Anh | Tài liệu kỹ thuật, communication với vendor nước ngoài |
| Làm việc nhóm & mentor | Là senior nên phải kéo cả team lên |
---
📜 Chứng chỉ gợi ý (không bắt buộc nhưng có lợi)
| Chứng chỉ | Giá trị |
|---|---|
| Oracle Certified Professional Java SE 11/17 | Vàng, rất được các ngân hàng respect |
| AWS Solutions Architect / Developer | Nếu hệ thống chạy trên cloud |
| Spring Professional Certification | Chứng minh vững Spring |
| ITIL Foundation | Phù hợp môi trường enterprise |
| Chứng chỉ nội bộ VPBank | Một số ngân hàng có chương trình đào tạo nội bộ về nghiệp vụ |
---
💡 So sánh mức độ cần thiết
```
Java Core + Spring Boot + SQL ████████████ (BẮT BUỘC)
Nghiệp vụ Corebanking ████████░░░░ (CỰC LỢI THẾ)
Microservices + Kafka ███████░░░░░ (Cần)
DevOps (Docker, K8s, CI/CD) ██████░░░░░░ (Cần)
Tiếng Anh giao tiếp ████████░░░░ (Cần)
Chứng chỉ Oracle ██████░░░░░░ (Cộng điểm)
```
---
⚠️ Điểm đáng lưu ý từ JD
- Tin không ghi rõ số năm kinh nghiệm nhưng title là Senior → thường cần 5+ năm Java, trong đó có ít nhất 2-3 năm làm corebanking/tài chính ngân hàng.
- Không ghi địa điểm → VPBank có trụ sở chính tại Hà Nội, có thể làm ở Hà Nội hoặc HCMC (chi nhánh).
- Phúc lợi "Không có thông tin" → nên hỏi HR khi phỏng vấn.
Chuẩn bị phỏng vấn
Hướng dẫn phỏng vấn Senior Java Developer (Corebanking) - VPBank
📋 Quy trình phỏng vấn dự kiến
Thông thường VPBank sẽ có 4-5 vòng cho vị trí Senior:
| Vòng | Hình thức | Nội dung | Thời lượng |
|---|---|---|---|
| Vòng 1 | HR Screening (Phone/Video) | Lý lịch, lương kỳ vọng, motivation | 20-30 phút |
| Vòng 2 | Technical Test (Online) | Java, SQL, Algorithm, System Design mini | 60-90 phút |
| Vòng 3 | Technical Interview (Team Lead/Senior Architect) | Java nâng cao, Spring, nghiệp vụ ngân hàng, coding live | 60-90 phút |
| Vòng 4 | System Design & Architecture | Thiết kế hệ thống corebanking, giải quyết vấn đề phức tạp | 60 phút |
| Vòng 5 | Director / Department Head | Tư duy chiến lược, phù hợp văn hóa, mức lương | 30-45 phút |
---
🎤 Câu hỏi hay gặp theo từng vòng
Vòng 1 — HR Screening
1. "Giới thiệu về bản thân và kinh nghiệm liên quan đến corebanking?"
2. "Tại sao bạn muốn rời công ty hiện tại?"
3. "Mức lương hiện tại và kỳ vọng?"
4. "Bạn biết gì về VPBank?" → Chuẩn bị về VPBank: top ngân hàng TMCP tư nhân, chiến lược chuyển đổi số mạnh mẽ (FE Credit, Cake, neo...), dự án Go corebanking
5. "Bạn có thể onboard trong bao lâu?"
Vòng 2 — Technical Test
- Implement một class Java xử lý logic ngân hàng (ví dụ: tính lãi suất, validate số tài khoản)
- Viết query SQL phức tạp (JOIN, GROUP BY, Subquery, Window Function)
- Bài toán thuật toán cơ bản (Array, String, LinkedList, Tree)
- Thiết kế REST API cho một nghiệp vụ đơn giản
Vòng 3 — Technical Interview
Java Core:
- Phân biệt `==` và `.equals()`?
- HashMap hoạt động thế nào? Tại sao capacity mặc định là 16?
- Synchronized vs ReentrantLock vs volatile?
- Giải thích Java Memory Model (Heap, Stack, Metaspace)?
- Garbage Collector các loại (G1, ZGC, Parallel), khi nào dùng loại nào?
- Optional class dùng khi nào? Anti-pattern nào cần tránh?
Spring:
- Spring Bean lifecycle?
- @Transactional hoạt động thế nào? Propagation level?
- Spring Boot auto-configuration?
- Cách handle exception toàn cục trong Spring?
Nghiệp vụ ngân hàng (ĐÂY LÀ ĐIỂM PHÂN BIỆT):
- Bạn hiểu gì về EOD (End of Day) batch trong corebanking?
- Làm sao đảm bảo ACID trong transaction tài chính?
- Phân biệt tiền gửi không kỳ hạn và có kỳ hạn? Cách tính lãi?
- Double-entry bookkeeping (kế toán kép) là gì?
- Nếu transaction thất bại giữa chừng, làm sao rollback?
Vòng 4 — System Design
- Thiết kế hệ thống xử lý 10 triệu giao dịch/ngày?
- Làm sao thiết kế hệ thống đảm bảo idempotency trong payment?
- Cách migrate monolithic corebanking sang microservices?
- Thiết kế distributed transaction giữa corebanking và các hệ thống con?
Vòng 5 — Final Round
- Định hướng nghề nghiệp 3-5 năm tới?
- Tại sao chọn VPBank mà không phải Techcombank/MBBank/Vietcombank?
- Bạn xử lý conflict trong team như thế nào?
---
💡 Tips chuẩn bị
✅ Nên làm
- Nghiên cứu VPBank trước: tin tức gần đây, các dự án chuyển đổi số, văn hóa doanh nghiệp
- Ôn lại code trên HackerRank/LeetCode (level Medium)
- Chuẩn bị 2-3 câu chuyện STAR (Situation-Task-Action-Result) về dự án corebanking đã làm
- Mang theo laptop có code demo các dự án cá nhân
- Hỏi ngược interviewer: về tech stack, team structure, dự án sắp tới
❌ Tránh
- Nói xấu công ty cũ
- Không biết gì về VPBank
- Không hỏi câu nào → thể hiện không quan tâm
- Đòi hỏi quá nhiều mà chưa chứng minh được giá trị
---
👔 Dress code
- VPBank là doanh nghiệp tư nhân hiện đại, dress code smart casual đến formal
- An toàn nhất: sơ mi + quần tây + giày tây, không cần vest
- Tránh mặc quá casual (áo thun, quần jean) dù VPBank không quá formal
- Nếu phỏng vấn online: vẫn ăn mặc chỉn chu phần trên
Lộ trình ôn thi
Lộ trình ôn tập 1-2 tuần cho Senior Java Developer (Corebanking)
📚 Kiến thức nền tảng cần ôn
Tuần 1 — Nền tảng Java & Spring
| Ngày | Chủ đề | Hoạt động cụ thể |
|---|---|---|
| T2 | Java Core | Ôn OOP, Collection, Generic, Stream API, Lambda, Optional |
| T3 | Java Concurrency | Thread, Executor, CompletableFuture, ConcurrentHashMap, Lock |
| T4 | JVM & Performance | Memory model, GC tuning, Profiling (VisualVM, JFR) |
| T5 | Spring Framework | IoC, AOP, Bean lifecycle, @Transactional, Exception Handling |
| T6 | Spring Boot & Microservices | Auto-config, REST API, Spring Cloud, Kafka, Redis |
| T7 | Database | SQL nâng cao, Index, Transaction isolation, Lock, Deadlock |
| CN | Tổng ôn + luyện đề | Làm 1 đề test full 90 phút, chấm điểm |
Tuần 2 — Nghiệp vụ ngân hàng & System Design
| Ngày | Chủ đề | Hoạt động cụ thể |
|---|---|---|
| T2 | Nghiệp vụ Corebanking | EOD/BOD, tiền gửi, cho vay, thanh toán, lãi suất |
| T3 | Ngân hàng nâng cao | ISO 8583, SWIFT, Clearing, Settlement, GL |
| T4 | Design Patterns | GoF patterns + Enterprise patterns (Saga, CQRS, Event Sourcing) |
| T5 | System Design | Thiết kế hệ thống high-scale, message queue, cache |
| T6 | Best practices | Code review, Security (PCI DSS), Logging, Monitoring |
| T7 | Mock Interview | Tập phỏng vấn với bạn bè, ghi âm, tự đánh giá |
| CN | Rest & review | Đọc lại notes, chuẩn bị tâm lý |
---
📖 Tài liệu tham khảo
Sách nên đọc
1. "Effective Java" - Joshua Bloch (Bản gốc tiếng Anh, có bản dịch) ⭐⭐⭐⭐⭐
2. "Java Concurrency in Practice" - Brian Goetz ⭐⭐⭐⭐⭐
3. "Spring in Action" - Craig Walls ⭐⭐⭐⭐
4. "Designing Data-Intensive Applications" - Martin Kleppmann ⭐⭐⭐⭐⭐ (cho system design)
5. "System Design Interview" - Alex Xu (Vol 1 & 2) ⭐⭐⭐⭐
6. "Banking Technology" - tìm ebook về corebanking systems
Tài liệu miễn phí online
- [Baeldung](https://baeldung.com) — Spring tutorials ⭐⭐⭐⭐⭐
- [Java Techie YouTube](https://youtube.com/@javatechie) — Java/Spring tiếng Anh ⭐⭐⭐⭐
- [Grokking the System Design Interview](https://educative.io) — design patterns ⭐⭐⭐⭐
- [LeetCode](https://leetcode.com) — practice coding (target Medium)
- [HackerRank](https://hackerrank.com) — practice SQL, Java
- Tech blog của VPBank trên Medium/Viblo
- Tài liệu nội bộ NHNN về quy định ngân hàng
Khóa học (trả phí, chất lượng cao)
- Udemy: Java Multithreading & Concurrency, Spring Boot Microservices
- Coursera: Java Programming and Software Engineering Fundamentals
- Pluralsight: Java, Spring, System Design
Nghiệp vụ ngân hàng
- Đọc quy chế tài chính NHNN (Ngân hàng Nhà nước)
- Blog: Temenos, ThoughtMachine, Mambu (các vendor corebanking lớn)
- Wikipedia về Core Banking System, Double-entry bookkeeping, ACH, SWIFT
---
🛠️ Luyện tập thực hành
Bài tập Java nên code
1. Implement Bank Account class với deposit/withdraw, kiểm tra concurrency
2. Viết Interest Calculator (lãi đơn, lãi kép, lãi suất bậc thang)
3. Implement Idempotent Payment Service với Redis
4. Viết Saga Pattern cho distributed transaction giữa 3 services
5. Code Custom Thread Pool để xử lý batch EOD
Bài tập SQL nên luyện
1. Query tổng hợp số dư theo chi nhánh
2. Top 10 khách hàng có giao dịch lớn nhất trong tháng
3. Detect các giao dịch bất thường (anti-fraud cơ bản)
4. Tính lãi tiết kiệm theo kỳ hạn
Mock System Design
1. Design hệ thống transfer liên ngân hàng (24/7)
2. Design core banking xử lý 1 triệu KH
3. Design hệ thống batch EOD chạy trong 30 phút
Tư vấn nghề nghiệp
Lời khuyên sự nghiệp cho Senior Java Developer (Corebanking)
🚀 Lộ trình thăng tiến điển hình
```
Junior Java Dev (1-2 năm)
↓
Java Dev (2-3 năm)
↓
Senior Java Dev (3-5 năm) ← BẠN ĐANG Ở ĐÂY
↓
├── Tech Lead (5-7 năm)
├── Solution Architect (7-10 năm)
└── Engineering Manager (7-10 năm)
↓
Director of Engineering / CTO
```
Các bước tiếp theo sau Senior
| Cấp bậc | Mô tả | Kỹ năng cần thêm |
|---|---|---|
| Tech Lead | Dẫn dắt team 5-10 người, vừa code vừa quản lý | People management, project planning, mentoring |
| Solution Architect | Thiết kế giải pháp tổng thể cho nhiều hệ thống | System design sâu, business acumen, giao tiếp stakeholder |
| Engineering Manager | Quản lý 2-3 team, định hướng kỹ thuật | Leadership, hiring, budgeting, strategy |
---
💰 Mức lương kỳ vọng theo cấp bậc (Corebanking - VPBank/top banks)
| Cấp bậc | Mức lương (Gross VND/tháng) | Ghi chú |
|---|---|---|
| Junior Java | 15 - 25 triệu | Tùy công ty |
| Mid-level Java | 25 - 40 triệu | |
| Senior Java | 40 - 70 triệu | VPBank top ngân hàng TMCP → cạnh tranh cao |
| Tech Lead | 60 - 100 triệu | |
| Solution Architect | 80 - 150 triệu | |
| Engineering Manager | 100 - 200 triệu | Top-tier banks |
Ưu đãi thường đi kèm (VPBank)
- Thưởng Tết 2-4 tháng lương (tùy performance)
- Thưởng KPI quý/năm
- Bảo hiểm sức khỏe cao cấp (PVI/Bảo Việt)
- Ăn trưa/đỗ xe miễn phí
- 14-15 ngày phép/năm
- Đào tạo nội bộ + hỗ trợ chứng chỉ
- ESOP (một số vị trí cao)
- Cho vay ưu đãi nhân viên
> ⚠️ Lưu ý: VPBank mức lương corebanking có thể cao hơn Techcombank, MB vì đây là hệ thống chiến lược. Đàm phán dựa trên kinh nghiệm + chứng chỉ + offer hiện tại.
---
🎓 Kỹ năng cần phát triển thêm để thăng tiến
Nếu muốn lên Tech Lead trong 2-3 năm
- Mentoring: dạy junior, review code chất lượng
- Estimation: estimate task phức tạp chính xác
- Communication: viết proposal, present cho management
- Project management cơ bản: Agile/Scrum, JIRA workflow
Nếu muốn lên Solution Architect
- Distributed system sâu hơn (Kafka, Event Sourcing, Saga)
- Cloud (AWS/Azure/GCP) — VPBank đang migrate cloud
- Security nâng cao (OAuth2, JWT, mTLS, Vault)
- Integration patterns: REST, gRPC, GraphQL, WebSocket
- Nghiệp vụ sâu: Basel III, IFRS 9, AML/KYC
Nếu muốn chuyển sang quản lý
- People management: hiring, 1-1 meeting, performance review
- Strategy: roadmap 1-3 năm
- Stakeholder management: giao tiếp với business, vendor
---
🌍 Cơ hội ngoài VPBank (nếu muốn move)
Cùng phân khúc corebanking
- Techcombank: đang Go corebanking, lương cạnh tranh nhất VN
- MB (MBBank): Core banking migration, chuyển đổi số mạnh
- ACB: đang modernize stack
- VIB, TPBank: fintech-friendly
- HDBank, SHB: đang tuyển nhiều
- Vietcombank, BIDV, VietinBank: big4 nhà nước, ổn định
Fintech / Vendor
- MoMo, ZaloPay, VNPay: payment system
- Timo, Cake (VPBank spinoff): digital banking
- Teckstack, Nashtech, FPT Software: outsourcing cho foreign banks
Foreign banks tại VN
- HSBC, Standard Chartered, UOB, Citi
- Lương USD, chế độ tốt, nhưng khó vào
---
⚠️ Lời khuyên thực tế
1. Corebanking là mảng niche nhưng giá trị cao — đừng nhảy sang web/frontend/mobile dù "dễ" hơn
2. Học nghiệp vụ ngân hàng là lợi thế cạnh tranh — dev nào cũng code được Java nhưng hiểu EOD, GL, lãi kép thì hiếm
3. Chứng chỉ Oracle Java là "huy hiệu" rất được các ngân hàng tôn trọng
4. Đừng ở lại 1 nơi quá lâu khi không được tăng lương đáng kể — 2-3 năm/lần move là hợp lý
5. Build network trong ngành — tham gia cộng đồng Java Việt Nam, Vietnam DevOps, fintech meetup
6. Viết blog, chia sẻ — giúp bạn nổi bật và thu hút offer tốt hơn
Câu hỏi thường gặp
Em mới ra trường, có nên apply vị trí Senior Java Developer Corebanking ở VPBank không?
Thật lòng mà nói thì chưa phù hợp em nhé. Vị trí Senior ở corebanking đòi hỏi ít nhất 5-7 năm kinh nghiệm Java, trong đó có 2-3 năm làm trực tiếp trên hệ thống ngân hàng. Em mới ra trường nên:
1. Apply vị trí Junior/Mid Java Developer trước (VPBank cũng tuyển)
2. Học thêm Spring Boot, Microservices, SQL nâng cao
3. Tìm công ty outsource cho ngân hàng (FPT, TMA, NashTech...) để tích lũy kinh nghiệm nghiệp vụ
4. Sau 2-3 năm hãy apply lại vị trí Senior corebanking
Nếu em apply giờ sẽ mất thời gian của cả hai bên. Tập trung xây nền tảng vững trước nhé!
Mức lương kỳ vọng hợp lý cho vị trí Senior Java Corebanking ở VPBank là bao nhiêu?
Với vị trí Senior Java Corebanking ở VPBank (top ngân hàng TMCP), mức lương hợp lý:
- Tối thiểu: 40-50 triệu gross
- Mức thị trường: 50-65 triệu gross
- Top offer (có chứng chỉ Oracle, 7+ năm exp, hiểu sâu corebanking): 65-85 triệu gross
Cộng thêm thưởng Tết (2-4 tháng), thưởng KPI, các phúc lợi khác có thể đưa tổng thu nhập năm lên 800 triệu - 1.2 tỷ.
Mẹo đàm phán:
- Đưa ra 1 con số cao hơn 15-20% so với mức bạn thực sự muốn
- Reference offer hiện tại + bonus các công ty khác đang offer
- Đừng quên hỏi về thưởng, review lương 6 tháng/năm, ESOP
- VPBank hay đánh giá cao ứng viên có chứng chỉ Oracle Java + hiểu nghiệp vụ ngân hàng
Làm corebanking ở ngân hàng có khác gì làm Java ở công ty product bình thường không?
Khác rất nhiều em nhé! Đây là những điểm khác biệt chính:
1. Áp lực cao hơn
- Code chạy sai = tiền mất, ảnh hưởng hàng triệu khách hàng
- Production downtime là thảm họa, phải có quy trình change management rất chặt
2. Quy trình nặng hơn
- Phải qua nhiều vòng review, test kỹ trước khi release
- Có dedicated QA team, không như startup "code xong ship luôn"
- Documentation phải đầy đủ (BRD, SRS, FSD, TSD...) — đúng như JD VPBank yêu cầu
3. Tech stack có phần cũ hơn
- Nhiều ngân hàng vẫn chạy Java 8/11, có hệ thống chạy cả COBOL
- Phải làm việc với Oracle DB nặng, stored procedure
4. Nghiệp vụ là vua
- Hiểu ngân hàng quan trọng không kém biết code
- Phải hiểu EOD batch, transaction isolation, ACID, double-entry
5. Phúc lợi tốt hơn
- Lương ổn định, Tết to, bảo hiểm tốt
- Nhưng thăng tiến chậm hơn startup
Tôi đang làm Java backend ở công ty fintech (không phải corebanking), có nên chuyển sang VPBank làm corebanking không?
Đây là bước đi rất hợp lý! Lý do:
Lợi thế của bạn:
- Đã có kinh nghiệm Java backend, Spring Boot, microservices
- Fintech cũng xử lý tiền, payment → hiểu một phần nghiệp vụ tài chính
- Quen với môi trường high-scale, performance tuning
Bạn cần bổ sung:
- Học sâu nghiệp vụ ngân hàng: EOD, GL, tiền gửi, tín dụng
- Tìm hiểu Oracle DB (nếu fintech bạn dùng MySQL/Postgres)
- Đọc về Basel, PCI DSS
- Luyện thêm System Design về distributed transaction
Cơ hội phát triển:
- Lương corebanking thường cao hơn fintech thường
- Ổn định hơn fintech (startup dễ pivot)
- Là "huy hiệu vàng" trong CV, sau này muốn đi đâu cũng dễ
Nên nhảy khi:
- Fintech bạn đang plateau
- Bạn muốn ổn định lâu dài, có thu nhập tốt
- Bạn thích làm hệ thống lớn, có impact thực tế
Phỏng vấn vòng Technical tại VPBank có khó không? Câu hỏi nào hay hỏi nhất?
Vòng Technical ở VPBank khá nặng, đặc biệt vị trí Corebanking. Theo kinh nghiệm các anh chị đã đậu:
Hay hỏi nhất:
1. Java Core (chiếm 30-40%): HashMap internal, ConcurrentHashMap, GC, Memory Model, Concurrency
2. Spring (20%): @Transactional propagation, Bean lifecycle, Exception handling
3. SQL/DB (20%): Query optimization, Index, Deadlock, Transaction isolation
4. Nghiệp vụ ngân hàng (20-30%): Đây là phần phân biệt ứng viên
5. System Design (10-20%): Ở vòng sau
Mẹo sống:
- Đừng nói "em không biết" — hãy nói "Em chưa gặp trường hợp này nhưng em nghĩ có thể...")
- Kể câu chuyện thực tế: "Em từng debug bug memory leak bằng VisualVM..."
- Nếu hỏi về ngân hàng mà chưa rõ → thừa nhận + thể hiện desire to learn
- Code live: nói suy nghĩ ra tiếng, đừng im lặng
- Hỏi ngược: "Team đang dùng Spring version mấy? Java version?" → thể hiện quan tâm
Corebanking là gì? Có phải chỉ làm với database Oracle không?
Corebanking là hệ thống xử lý giao dịch cốt lõi của ngân hàng, bao gồm:
Chức năng chính:
- Quản lý tài khoản khách hàng (CASA - Current Account Savings Account)
- Tiền gửi có kỳ hạn, tiết kiệm
- Cho vay, bảo lãnh
- Thanh toán, chuyển tiền (internal, interbank, quốc tế)
- EOD/BOD batch
- GL (General Ledger) - Sổ cái
Tech stack phổ biến:
- Java (phổ biến nhất) hoặc COBOL (cũ)
- Oracle DB (rất phổ biến) - nhưng không phải duy nhất, có thể PostgreSQL, DB2
- Spring Framework, microservice
- Kafka/RabbitMQ cho async
- Redis cho cache
Tại sao Oracle?
- Độ ổn định cao, ACID compliance cực tốt
- Partitioning, RAC hỗ trợ tốt cho data lớn
- Cộng đồng enterprise lớn
- Stored Procedure trên Oracle rất mạnh
Tóm lại: Corebanking không chỉ là Oracle, nhưng Oracle là một phần quan trọng. Dev corebanking phải hiểu cả Java lẫn SQL nâng cao.
Tôi nên học gì trong 6 tháng tới nếu muốn ứng tuyển vị trí này?
Lộ trình 6 tháng thực tế cho người đã có 2-3 năm Java:
Tháng 1-2: Java nâng cao
- Đọc "Effective Java" (chương quan trọng: 2, 3, 6, 7, 11)
- Concurrency: Thread pool, CompletableFuture, ConcurrentHashMap
- JVM tuning cơ bản (GC types, heap config)
- Design Patterns: GoF + Enterprise
Tháng 3-4: Spring & Microservices
- Spring Boot sâu: Auto-config, Custom starter, Profile
- Spring Cloud: Eureka, Gateway, Config, Circuit Breaker
- Kafka cơ bản đến nâng cao
- Redis cache strategy
Tháng 5: Database & Ngân hàng
- Oracle SQL nâng cao, PL/SQL cơ bản
- Transaction isolation, Deadlock, Index B-Tree
- Đọc về nghiệp vụ ngân hàng (EOD, GL, tiền gửi)
- Tìm hiểu ISO 8583, SWIFT
Tháng 6: System Design + Luyện phỏng vấn
- System Design Interview (Alex Xu)
- Luyện LeetCode Medium 50 bài
- Mock interview 3-5 buổi
- Apply vào VPBank + backup 3-4 ngân hàng khác
Hàng ngày: Đọc 1-2 bài Medium về Java/Banking trên Baeldung, DZone, dev.to
VPBank có văn hóa làm việc như thế nào? Có OT nhiều không?
Văn hóa VPBank (theo chia sẻ từ nhiều người trong ngành):
Điểm tích cực:
- Top ngân hàng TMCP tư nhân, lương cạnh tranh top đầu ngành
- Môi trường chuyên nghiệp, cơ hội học hỏi nghiệp vụ chuẩn quốc tế
- Đang chuyển đổi số mạnh → nhiều dự án thú vị (Cake, neo, VCB Pay...)
- Phúc lợi tốt: bảo hiểm cao cấp, gym, xe đưa đón một số nơi
Điểm cần lưu ý:
- Ngân hàng = quy trình nặng, nhiều compliance
- OT có, đặc biệt khi có dự án gấp hoặc EOD batch chạy đêm
- Văn hóa phân cấp khá rõ (so với startup)
- Tốc độ ra quyết định chậm hơn công ty product
Lời khuyên: Hỏi rõ trong phỏng vấn về:
- OT được tính thế nào (có OT pay không?)
- Cơ chế on-call
- Team size và work-life balance
- Lộ trình thăng tiến cụ thể
Với vị trí Senior Corebanking, có thể sẽ có giai đoạn on-call cuối tuần để xử lý sự cố production.
So với Techcombank/MBBank thì VPBank về mảng Corebanking thế nào?
So sánh nhanh từ góc độ developer:
| Tiêu chí | VPBank | Techcombank | MBBank |
|---|---|---|---|
| Lương | Cao | Cao nhất (top ngành) | Cạnh tranh |
| Tech stack | Modernize tốt | Rất modern (cloud-native) | Modern |
| Quy trình | Chuẩn, có phần cứng nhắc | Chuẩn, cải tiến liên tục | Chuẩn |
| Dự án thú vị | Cake, neo, VCB... | Digital transformation | App MBBank, MFast |
| Work-life balance | Trung bình | Trung bình | Trung bình |
| Cơ hội học | Tốt | Rất tốt | Tốt |
| Văn hóa | Chuyên nghiệp | Đổi mới | Linh hoạt |
Góc nhìn cá nhân:
- Muốn lương cao nhất + tech hiện đại nhất: Techcombank
- Ổn định + brand name tốt + lương tốt: VPBank
- Cơ hội làm nhiều dự án digital: MBBank
Vị trí Senior Java Corebanking ở 3 ngân hàng này đều đáng để apply. Nên apply cả 3 để có offer đàm phán!