VietABank
Chuyên viên Phát triển ứng dụng (Mobile app) - Làm việc tại Trụ sở chính Hà Nội
Hà Nội
Cấp chuyên viên
Thỏa thuận
1 chỉ tiêu
Mô tả công việc
1. Yêu cầu kỹ thuật chi tiết:
- iOS Development: Kinh nghiệm phát triển ứng dụng iOS sử dụng Swift hoặc Objective-C, hiểu rõ kiến trúc iOS (MVC, MVVM) và các công cụ như Xcode.
- Angular & Frontend: Thành thạo Angular (phiên bản mới), TypeScript, HTML5, CSS3, RxJS, và các thư viện quản lý trạng thái như NgRx hoặc Akita.
- Mobile Development: Có kinh nghiệm làm việc với các framework lai (Hybrid) như Ionic (thường kết hợp với Angular) để đóng gói ứng dụng cho iOS.
- API & Backend: Có kinh nghiệm tích hợp RESTful APIs, SOAP, hoặc GraphQL để kết nối ứng dụng với backend.
- Công cụ & Quy trình: Sử dụng thành thạo Git, hiểu biết về CI/CD (Jenkins, Fastlane) và quy trình Agile/Scrum.
2. Yêu cầu kỹ năng khác:
- Tiếng Anh: Khả năng đọc hiểu tài liệu kỹ thuật tốt, giao tiếp lưu loát là lợi thế lớn.
- Tư duy: Kỹ năng giải quyết vấn đề (problem-solving), tối ưu hiệu suất (performance optimization) cho giao diện người dùng.
3. Kinh nghiệm làm việc: Yêu cầu 1-3 năm kinh nghiệm trở lên cho các vị trí Junior/Mid-leve.
Quyền lợi
- Chế độ đãi ngộ hấp dẫn.
- Chính sách phúc lợi toàn diện: Bảo hiểm VietABank Care, các chế độ chăm sóc nhân sự theo quy định ngân hàng, nghỉ hưởng lương ngày sinh nhật,…
- Lộ trình phát triển rõ ràng với các chương trình đào tạo và nâng cao năng lực chuyên môn
- Môi trường làm việc chuyên nghiệp, năng động, gắn kết và nhiều cơ hội thăng tiến.
Yêu cầu ứng viên
1. Yêu cầu kỹ thuật chi tiết:
- iOS Development: Kinh nghiệm phát triển ứng dụng iOS sử dụng Swift hoặc Objective-C, hiểu rõ kiến trúc iOS (MVC, MVVM) và các công cụ như Xcode.
- Angular & Frontend: Thành thạo Angular (phiên bản mới), TypeScript, HTML5, CSS3, RxJS, và các thư viện quản lý trạng thái như NgRx hoặc Akita.
- Mobile Development: Có kinh nghiệm làm việc với các framework lai (Hybrid) như Ionic (thường kết hợp với Angular) để đóng gói ứng dụng cho iOS.
- API & Backend: Có kinh nghiệm tích hợp RESTful APIs, SOAP, hoặc GraphQL để kết nối ứng dụng với backend.
- Công cụ & Quy trình: Sử dụng thành thạo Git, hiểu biết về CI/CD (Jenkins, Fastlane) và quy trình Agile/Scrum.
2. Yêu cầu kỹ năng khác:
- Tiếng Anh: Khả năng đọc hiểu tài liệu kỹ thuật tốt, giao tiếp lưu loát là lợi thế lớn.
- Tư duy: Kỹ năng giải quyết vấn đề (problem-solving), tối ưu hiệu suất (performance optimization) cho giao diện người dùng.
3. Kinh nghiệm làm việc: Yêu cầu 1-3 năm kinh nghiệm trở lên cho các vị trí Junior/Mid-leve.
Phân tích kỹ năng cần có
## Phân tích Kỹ năng Yêu cầu
### 🔧 Hard Skills bắt buộc
| Nhóm kỹ năng | Yêu cầu cụ thể | Mức độ ưu tiên |
|---|---|---|
| **iOS Development** | Swift hoặc Objective-C, MVC/MVVM, Xcode | ⭐⭐⭐ Bắt buộc |
| **Frontend** | Angular (mới nhất), TypeScript, HTML5, CSS3, RxJS | ⭐⭐⭐ Bắt buộc |
| **State Management** | NgRx hoặc Akita | ⭐⭐ Cần có |
| **Hybrid Mobile** | Ionic framework | ⭐⭐ Bắt buộc |
| **API Integration** | RESTful APIs, SOAP, GraphQL | ⭐⭐ Bắt buộc |
| **DevOps** | Git, CI/CD (Jenkins/Fastlane) | ⭐ Cần biết |
| **Agile** | Scrum methodology | ⭐ Cần biết |
### 🧠 Soft Skills & Ngôn ngữ
- **Tiếng Anh**: Đọc hiểu tài liệu kỹ thuật tốt (bắt buộc), giao tiếp lưu loát (lợi thế)
- **Problem-solving**: Khả năng debug, giải quyết lỗi ứng dụng
- **Performance optimization**: Tối ưu UI/UX, tốc độ load ứng dụng
### 📊 Đánh giá cấp độ ứng viên phù hợp
**Cấp Junior (0-1 năm kinh nghiệm):**
- Thành thạo Swift/SwiftUI hoặc Angular
- Đã từng build ít nhất 1 ứng dụng hoàn chỉnh
- Hiểu cơ bản về API integration
**Cấp Mid-level (1-3 năm kinh nghiệm):**
- Kinh nghiệm multi-platform (iOS + Frontend)
- Đã làm việc với hybrid framework
- Hiểu về CI/CD pipeline
- Có kinh nghiệm tối ưu performance
### 📜 Chứng chỉ gợi ý (không bắt buộc nhưng là lợi thế)
- AWS Certified Developer hoặc GCP
- Angular Developer Certification
- Apple Certified iOS Technician (ít phổ biến hơn)
- ISTQB cho testing cơ bản
### 💡 Phân tích điểm đặc thù của tin tuyển dụng
Vị trí này yêu cầu **full-stack mobile developer** — nghĩa là bạn cần cover cả frontend lẫn mobile app. Đây là yêu cầu khá hiếm gặp, thường chỉ có ở các ngân hàng vừa và nhỏ hoặc startup fintech. VietABank đang build đội ngũ phát triển app riêng, nên bạn sẽ có cơ hội tham gia từ giai đoạn đầu.
Chuẩn bị phỏng vấn
## Hướng dẫn Phỏng vấn VietABank - Mobile Developer
### 📋 Quy trình phỏng vấn dự kiến
**Thông thường tại VietABank sẽ có 2-3 vòng:**
1. **Vòng 1 - Sàng lọc hồ sơ & Phone Screening** (15-20 phút)
- HR gọi điện xác nhận thông tin, hỏi về kinh nghiệm
- Tìm hiểu mức lương kỳ vọng, khả năng join
2. **Vòng 2 - Technical Interview** (45-60 phút)
- Phỏng vấn với Team Lead hoặc IT Manager
- Có thể có bài test thực hành nhỏ hoặc live coding
3. **Vòng 3 - Manager/Culture Interview** (30-45 phút)
- Gặp trực tiếp Head of Department
- Thảo luận về môi trường làm việc, định hướng phát triển
### 🎯 Câu hỏi kỹ thuật hay gặp theo từng nhóm
**Nhóm iOS:**
- "Giải thích sự khác nhau giữa struct và class trong Swift?"
- "ARC hoạt động như thế nào? Khi nào dùng strong/weak/unowned?"
- "Life cycle của một UIViewController?"
- "Làm sao để handle memory leak trong iOS?"
- "Diff giữa scrollViewDidScroll và scrollViewWillBeginDragging?"
**Nhóm Angular & Frontend:**
- "Giải thích RxJS Observable và Promise khác nhau thế nào?"
- "Khi nào nên dùng BehaviorSubject vs Observable?"
- "Lifecycle hooks trong Angular từ init đến destroy?"
- "Tại sao NgRx được dùng? Trường hợp nào dùng Akita?"
- "Change detection strategy: OnPush vs Default khác nhau gì?"
**Nhóm Hybrid & Ionic:**
- "So sánh Ionic với React Native/Flutter? Tại sao bank chọn Ionic?"
- "Làm sao access native features (camera, fingerprint) trong Ionic?"
- "Cách handle platform-specific code trong Ionic?"
**Nhóm DevOps & Best Practices:**
- "Quy trình CI/CD của team như thế nào?"
- "Git workflow: merge vs rebase, khi nào dùng stash?"
- "Làm sao optimize app bundle size?"
### 💼 Câu hỏi hành vi thường gặp
- "Kể về một dự án mobile app mà bạn tự hào nhất?"
- "Bạn xử lý thế nào khi deadline gấp mà code còn bug?"
- "Có kinh nghiệm làm việc với ngân hàng/chính phủ không? (security compliance)"
- "Tại sao muốn chuyển từ công ty hiện tại sang VietABank?"
### 👔 Dress Code & Tips chuẩn bị
**Dress code:** Business casual
- Nam: áo sơ mi, quần âu hoặc quần kaki, giày lịch sự
- Nữ: áo sơ mi/áo thun lịch sự, quần âu/chân váy
- Tránh: đồ thể thao, giày sandals, jeans rách
**Tips chuẩn bị:**
- 🔍 Nghiên cứu trước app VietABank Mobile trên App Store — dùng thử, feedback về UX
- 📱 Mang theo portfolio: demo app đã làm (trên điện thoại hoặc repo GitHub)
- 📝 Chuẩn bị code sample hoặc architecture diagram của dự án cũ
- 💡 Chuẩn bị câu hỏi cho nhà tuyển dụng: team size, tech stack chi tiết, roadmap app
**Lưu ý đặc biệt:**
- Vì làm tại Hà Nội HQ, có thể hỏi về chính sách WFH/flexible working
- Mức lương "thỏa thuận" — hãy research kỹ mức lương thị trường trước khi đàm phán
Lộ trình ôn thi
## Lộ trình Ôn tập & Chuẩn bị (1-2 tuần)
### 📅 Gợi ý lộ trình 10 ngày
**Ngày 1-2: Ôn iOS Fundamentals**
- Swift syntax, optionals, closures, protocols
- Xcode basics: breakpoints, debugging
- Tài liệu: Apple's Swift official documentation, raywenderlich.com Swift tutorial
- Thực hành: Viết 1 app đơn giản có navigation + API call
**Ngày 3-4: Angular Deep Dive**
- Angular modules, components, services
- RxJS operators: map, filter, switchMap, combineLatest, debounceTime
- NgRx store, actions, reducers, effects
- Tài liệu: Angular.io official guides, RxJS marbles
- Thực hành: Build 1 small Angular app với state management
**Ngày 5: Ionic & Hybrid Development**
- Ionic CLI, Capacitor integration
- Native plugin usage (camera, biometrics)
- Platform-specific styling (iOS safe areas)
- Tài liệu: Ionic official docs, Ionic blog
**Ngày 6: API Integration & Backend**
- RESTful API design patterns
- HTTP interceptors trong Angular
- Error handling, retry logic
- OAuth 2.0 / JWT basics (đặc biệt quan trọng với banking app)
**Ngày 7: DevOps & Git**
- Git branching strategy (GitFlow)
- Basic Jenkins/Fastlane pipeline concept
- App signing, provisioning profiles (iOS)
- CI/CD basic flow
**Ngày 8: Ôn System Design cho Mobile**
- Offline-first architecture
- Caching strategy (local storage, IndexedDB)
- Security best practices cho banking app
- Performance optimization techniques
**Ngày 9: Mock Interview & Portfolio**
- Làm 2-3 bài coding nhỏ trên Codility hoặc LeetCode (easy level)
- Sắp xếp portfolio project
- Chuẩn bị câu hỏi cho interviewer
**Ngày 10: Research & Relax**
- Tìm hiểu về VietABank: lịch sử, sản phẩm, culture
- Thử app VietABank Mobile
- Nghỉ ngơi, chuẩn bị tinh thần
### 📚 Tài liệu tham khảo được đánh giá cao
**Sách:**
- "iOS Programming with Swift" - Big Nerd Ranch
- "Building Mobile Apps with Ionic 2" - O'Reilly
- "Designing Data-Intensive Applications" - Martin Kleppmann (nâng cao)
**Online Courses:**
- Udemy: iOS & Swift - The Complete iOS App Development Bootcamp
- Coursera: Full Stack Mobile Development with React
- Ionic Academy (youtube channel)
**Practice Platforms:**
- LeetCode (tag: iOS, JavaScript)
- HackerRank (Swift, Angular)
- Exercism.io (Swift exercises)
**Vietnamese Tech Community:**
- Kipalog.com — các bài viết về mobile dev
- Vietnam Devs Slack/Discord community
- GitHub VN community groups
Tư vấn nghề nghiệp
## Lời khuyên Sự nghiệp cho Mobile Developer tại VietABank
### 📈 Lộ trình Thăng tiến dự kiến
```
Junior Mobile Dev (0-2 năm)
↓ 18-24 tháng
Mid-level Mobile Dev
↓ 2-3 năm
Senior Mobile Developer / Tech Lead
↓ 3-4 năm
Mobile Architect / Engineering Manager
↓
CTO / VP of Engineering (nếu đi mạnh về management)
```
**Ở VietABank cụ thể:**
- Sau 1-2 năm: có thể lead một feature module nhỏ
- Sau 2-3 năm: có thể thăng Senior, mentor Junior
- Cơ hội chuyển sang: Product Owner, Business Analyst (nếu muốn)
### 💰 Mức Lương Kỳ vọng theo cấp bậc (Hà Nội, 2024)
| Cấp bậc | Kinh nghiệm | Lương tháng (VND) |
|---|---|---|
| Junior | 0-1 năm | 12-18 triệu |
| Mid-level | 1-3 năm | 18-30 triệu |
| Senior | 3-5 năm | 30-45 triệu |
| Lead/Architect | 5+ năm | 45-70 triệu |
**Lưu ý:** VietABank là ngân hàng tư nhân vừa, mức lương có thể thấp hơn các ngân hàng lớn (Vietcombank, VietinBank) nhưng cơ hội học hỏi và thăng tiến có thể nhanh hơn do còn đang xây dựng team tech.
### ⚠️ Ưu điểm & Nhược điểm của vị trí này
**Ưu điểm:**
- ✅ Cơ hội tham gia xây dựng app banking từ đầu
- ✅ Môi trường ổn định, ít áp lực startup
- ✅ Phúc lợi ngân hàng: bảo hiểm, nghỉ phép, thưởng Tết
- ✅ Đào tạo nội bộ, lộ trình thăng tiến rõ ràng
- ✅ Làm việc tại Hà Nội — tiết kiệm chi phí so với startup
**Nhược điểm:**
- ⚠️ Tech stack cũ hơn startup fintech (Ionic thay vì Flutter/React Native)
- ⚠️ Quy trình phê duyệt chậm hơn startup
- ⚠️ Có thể phải tuân thủ nhiều regulation của ngân hàng
- ⚠️ Mức lương có thể thấp hơn công ty fintech cùng cấp
### 🎯 Kỹ năng cần phát triển thêm để thăng tiến
**Kỹ năng kỹ thuật:**
- Học thêm Flutter hoặc React Native để mở rộng
- Tìm hiểu về security (OWASP Mobile) — rất quan trọng với banking
- Cloud AWS/GCP cho mobile backend
- Kotlin/Java nếu muốn mở rộng sang Android
**Kỹ năng mềm:**
- Giao tiếp tiếng Anh lưu loát (sẽ giúp bạn đọc docs mới)
- Kỹ năng trình bày, code review
- Business understanding: hiểu nghiệp vụ ngân hàng
**Lời khuyên dài hạn:**
- Sau 2-3 năm tại VietABank, bạn có thể chuyển sang các ngân hàng lớn hơn với mức lương tăng 30-50%
- Hoặc chuyển sang fintech startup với equity nếu muốn mạo hiếm
Câu hỏi thường gặp
Mức lương cho vị trí Mobile Developer tại VietABank là bao nhiêu?
Tin tuyển dụng ghi 'Thỏa thuận', không công khai con số cụ thể. Theo thị trường Hà Nội 2024, vị trí Junior (0-1 năm) khoảng 12-18 triệu, Mid-level (1-3 năm) khoảng 18-30 triệu. Nên research kỹ trước buổi phỏng vấn và đề xuất con số cụ thể dựa trên kinh nghiệm thực tế của bạn. VietABank có chính sách thương lượng linh hoạt.
Tại sao VietABank dùng Ionic thay vì Flutter hay React Native? Có nên apply không?
Ionic được chọn vì tích hợp tốt với Angular (cùng hệ sinh thái JavaScript), tiết kiệm chi phí phát triển cross-platform. Đây là lựa chọn phổ biến của các ngân hàng vừa và nhỏ. Bạn vẫn nên apply vì: (1) học thêm Ionic không mất thời gian nếu đã biết Angular, (2) kinh nghiệm banking app rất giá trị, (3) có thể chuyển sang tech stack khác sau 1-2 năm.
Mình có 2 năm kinh nghiệm Android (Kotlin), muốn chuyển sang vị trí này được không?
Có thể được, nhưng cần bổ sung thêm kiến thức. Vị trí yêu cầu chủ yếu iOS + Angular/Ionic. Bạn nên: (1) học Swift cơ bản trong 2-3 tuần — syntax Kotlin và Swift khá tương tự, (2) ôn Angular/TypeScript, (3) nhấn mạnh trong CV về khả năng cross-platform và tư duy mobile app. Kinh nghiệm Android là lợi thế khi team cần phát triển Android app sau này.
Chế độ làm việc tại VietABank như thế nào? Có hybrid không?
Thông tin cụ thể không được công khai trong tin tuyển dụng. Tuy nhiên, đa số ngân hàng tại Hà Nội áp dụng: (1) giờ làm 8h30-17h30, thứ 2-6 (có thứ 7 làm buổi sáng), (2) hybrid policy tùy phòng ban — nên hỏi trực tiếp HR trong vòng phone screening, (3) ngày nghỉ phép theo quy định luật lao động + thêm ngày nghỉ sinh nhật.
Cần chuẩn bị gì cho vòng technical interview?
Chuẩn bị theo 3 nhóm: (1) iOS: Swift basics, MVC/MVVM, Xcode debugging, (2) Angular: RxJS operators, NgRx, lifecycle hooks, (3) Ionic: Capacitor, native plugins. Có thể có bài test nhỏ 30-45 phút hoặc live coding. Nên mang theo portfolio (repo GitHub, demo app trên điện thoại) và chuẩn bị giải thích architecture của 1 dự án cụ thể. Đặc biệt ôn kỹ về API integration và security vì đây là banking app.
Sinh viên mới ra trường, chưa có kinh nghiệm, có nên ứng tuyển không?
Có thể thử nếu bạn có project cá nhân/freelance thể hiện kỹ năng. Tin tuyển dụng ghi '1-3 năm' nhưng nhiều ngân hàng vẫn tuyển fresh grads có portfolio tốt. Hãy: (1) build 1-2 app hoàn chỉnh (iOS + Angular), (2) đưa lên App Store/Google Play, (3) push lên GitHub, (4) trong CV nhấn mạnh project thay vì kinh nghiệm công việc. Tuy nhiên, cạnh tranh sẽ khó hơn, nên apply đồng thời các vị trí tại startup để có backup.
KPI của Mobile Developer tại ngân hàng là gì?
Thông thường KPI bao gồm: (1) số lượng feature hoàn thành đúng deadline, (2) số lượng bug sau release, (3) performance metrics (app launch time, crash rate), (4) đóng góp team (code review, documentation). Banking app có chu kỳ release cố định (thường 2-4 tuần/lần), nên deadline thường không quá gấp như startup. Chi tiết KPI sẽ được HR hoặc line manager thông báo trong offer.