messenger

Chat Mess

zalo

Chat Zalo

phone

Phone

Gọi ngay: 097.5151.777
messenger

Facebook

messenger

TikTok

Hỗ trợ tư vấn: 097.5151.777
VPBank

Senior Java Developer (Corebanking) - TA171

Khối Công nghệ thông tin
CMNV

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!