Tec
Techcombank

Expert, iOS Software Engineering (40001156)

TP. Ha Noi Technology Division
Expert

Mô tả công việc

## Job Purpose
 

Lead the design, development, and optimization of enterprise-grade iOS applications that integrate seamlessly with Techcombank backend platforms and digital ecosystems. Act as a senior technical contributor, mentor engineers, drive engineering excellence, and ensure delivery of secure, scalable, and high-performance mobile solutions. 

## Key Accountabilities (1)

1. Mobile Solution Architecture & Development 

Design and develop scalable, secure, and maintainable iOS applications aligned with Techcombank architecture standards. 

Contribute to low-level solution design and technical implementation of digital banking products. 

Collaborate closely with Backend Engineers, Solution Architects, Product Owners, and QE teams to deliver end-to-end customer journeys. 

Drive adoption of modern iOS architecture patterns and engineering standards. 

2. Technical Leadership & Mentorship 

Provide technical coaching and mentorship to Software Engineers and Senior Software Engineers. 

Lead technical discussions, design reviews, and architecture reviews. 

Promote best practices in Swift development, code quality, application performance, and security. 

Support capability building activities within the engineering organization. 

## Key Accountabilities (2)

3. Code Quality, Performance & Security 

Lead peer code reviews and enforce engineering standards across the team. 

Optimize application performance, responsiveness, memory management, and battery consumption. 

Ensure compliance with mobile security standards and secure coding practices. 

Implement monitoring, logging, crash analytics, and observability mechanisms to improve production stability. Adapted from engineering quality and optimization responsibilities. 

4. Testing, Reliability & Release Management 

Drive implementation of Unit Testing, UI Testing, Integration Testing, and automation testing. 

Partner with QE teams to troubleshoot and resolve complex production issues. 

Improve CI/CD pipelines for mobile application delivery. 

Support App Store release management and production deployment activities. 

Ensure high software reliability, release quality, and operational excellence. 

5. Technical Documentation & Engineering Governance 

Produce and maintain technical documentation, including:  

Mobile application architecture documents 

API integration specifications 

Development standards and coding guidelines 

Security and performance recommendations 

Ensure documentation remains updated and aligned with system evolution. 

## Success Profile - Qualification and Experiences

Success Profile 

Bachelor's or master's degree in computer science, Software Engineering, Information Technology, or related fields. 

5–7+ years of professional iOS development experience. 

Mobile Engineering: Swift, UIKit, SwiftUI, Combine, Async/Await, Dependency Injection, Modular Architecture, RxSwift, ROC codebase development and maintenance. 

Architecture & Design: SOLID, MVVM, VIPER, Clean Architecture, API-first Design, Offline-first Design, CocoaPods, Swift Package Manager (SPM), Modular Package Architecture. 

Integration & Backend Collaboration: REST API, GraphQL, OAuth2, OIDC, JWT Authentication, API Security. 

Ideal Candidate Profile 

Strong hands-on iOS engineer with deep understanding of mobile architecture and software craftsmanship. 

Able to influence technical direction without direct people management responsibility. 

Passionate about engineering excellence, mentoring, and continuous improvement. 

Comfortable operating within large-scale enterprise and banking technology ecosystems. 

Strong collaboration mindset with Backend, Platform, Security, Architecture, and Product teams.

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 chuyên môn)

1. Ngôn ngữ lập trình (BẮT BUỘC)

| Ngôn ngữ | Mức độ yêu cầu | Ứng dụng trong TechcomBank |
|----------|----------------|---------------------------|
| Java | Thành thạo | Backend core banking, API services |
| TypeScript | Thành thạo | Web applications, internal tools |
| Swift/Kotlin | Trung bình-Khá | Mobile banking apps |
| Dart | Trung bình | Flutter cross-platform |

2. Kiến trúc & Design (BẮT BUỘC)

- SOLID Principles – Nguyên tắc nền tảng của OOP
- Design Patterns – Singleton, Factory, Observer, Repository, CQRS, Event Sourcing...
- Microservices Architecture – Kiến trúc phổ biến trong ngân hàng số
- Observability – Monitoring, Logging (ELK Stack, Prometheus), Tracing (Jaeger)
- Compilation & Runtime – Hiểu sâu JVM, garbage collection, JIT/AOT compilation

3. Kỹ năng nâng cao (Rất quan trọng)

- High Performance & Concurrency – Threading, async/await, reactive programming (RxJava, Project Reactor)
- Security Best Practices – OWASP Top 10, mã hóa dữ liệu, OAuth2/JWT, Spring Security
- Emerging Technology – Cloud-native, containerization (Docker/Kubernetes), serverless

### 🤝 Soft Skills (Kỹ năng mềm)

- Technical Leadership – Quản lý team 2+ năm là yêu cầu bắt buộc
- Mentoring – Hướng dẫn Officer-level engineers
- Communication – Làm việc với stakeholders nội bộ và đối tác
- Problem Solving – Debug phức tạp, performance tuning
- Process Improvement – Đề xuất và drive thay đổi

### 📜 Chứng chỉ gợi ý

| Chứng chỉ | Giá trị | Ghi chú |
|-----------|---------|---------|
| AWS Certified Solutions Architect | ⭐⭐⭐ | Cloud phổ biến tại TechcomBank |
| Certified Kubernetes Administrator (CKA) | ⭐⭐ | Quản lý container |
| Oracle Certified Professional (OCP) | ⭐⭐ | Nếu dùng Java EE nhiều |
| Spring Professional Certification | ⭐⭐ | Framework Java phổ biến |
| TOEIC 450+ | ⭐⭐ | Yêu cầu tiếng Anh |

---

So sánh: Junior Dev vs Expert (5+ năm)

| Tiêu chí | Junior (< 3 năm) | Expert (5+ năm) |
|----------|------------------|------------------|
| Code | Viết được feature | Review, mentor, enforce standards |
| Architecture | Hiểu diagram | Thiết kế low-level architecture |
| Problem solving | Debug đơn giản | Debug phức tạp, production incidents |
| Teamwork | Task-oriented | Lead team, mediate conflicts |
| Documentation | Viết comments | Tạo guidelines, API specs |
| Technology | 1-2 ngôn ngữ | Đa ngôn ngữ, cross-functional |

Chuẩn bị phỏng vấn

## Hướng dẫn Phỏng vấn TechcomBank - Expert Software Engineering

### 📋 Quy trình phỏng vấn (Thông thường)

Vòng 1: HR Screening (30-45 phút)
- Kiểm tra kinh nghiệm, động lực ứng tuyển
- Tìm hiểu mức lương kỳ vọng, availability
- Đánh giá culture fit với TechcomBank

Vòng 2: Technical Interview - Coding (60-90 phút)
- Live coding hoặc system design
- Kiểm tra Java/TypeScript proficiency
- Algorithm & data structures (medium-hard level)
- Performance optimization scenarios

Vòng 3: Technical Interview - Architecture (60-90 phút)
- Low-level architecture design
- Scenario-based: "Thiết kế hệ thống thanh toán..."
- Review code từ project trước đó
- Đặt câu hỏi về trade-offs

Vòng 4: Panel Interview với Tech Lead/Director (45-60 phút)
- Leadership & mentoring approach
- Xử lý conflict trong team
- Vision về engineering excellence
- Case study: "Team của bạn có technical debt cao, bạn sẽ làm gì?"

Vòng 5: HR Final Round (30 phút)
- Compensation & benefits discussion
- Start date, logistics

---

### 🎯 Câu hỏi hay gặp theo từng vòng

Vòng HR:
- "Tại sao bạn rời công ty hiện tại?"
- "Bạn biết gì về TechcomBank và chiến lược công nghệ của họ?"
- "Mức lương kỳ vọng của bạn là bao nhiêu?"
- "Bạn có thể bắt đầu khi nào?"

Vòng Technical Coding:
- "Viết function để detect palindrome trong 1 câu"
- "Design class hierarchy cho hệ thống ngân hàng (Account, Transaction...)"
- "Implement thread-safe singleton trong Java"
- "Tối ưu hóa query N+1 problem"

Vòng Architecture:
- "Thiết kế hệ thống transfer tiền real-time giữa các tài khoản"
- "Làm sao để scale hệ thống từ 1000 lên 1 triệu concurrent users?"
- "Giải thích sự khác nhau giữa microservices và monolithic"
- "Khi nào dùng Kafka vs RabbitMQ?"
- "Design pattern nào phù hợp cho payment gateway?"

Vòng Leadership:
- "Mô tả lần bạn mentor một junior thành công"
- "Bạn xử lý conflict giữa 2 senior engineers như thế nào?"
- "Kế hoạch của bạn để reduce technical debt trong 6 tháng?"
- "Làm sao để balance giữa delivery deadline và code quality?"

---

### 💡 Tips chuẩn bị

1. Research TechcomBank:
- Đọc về chiến lược "Embedded Finance" và "Super App"
- Tìm hiểu tech stack hiện tại: Java/Spring, Kubernetes, AWS
- Theo dõi news về digital banking transformation

2. Practice coding:
- LeetCode medium problems (20-30 bài)
- Tập trung: trees, graphs, dynamic programming
- Thực hành system design: đọc các case study từ "System Design Interview"

3. Chuẩn bị portfolio:
- Sẵn sàng demo project đã lead
- Chuẩn bị architecture diagrams
- Có câu trả lời cho mọi dòng code trong CV

4. Behavioral prep:
- Dùng STAR method cho leadership questions
- Chuẩn bị 2-3 stories về mentoring, conflict resolution

---

### 👔 Dress Code

- Văn phòng Hà Nội: Business casual (sơ mi, quần âu/khaki)
- Tránh vest cứng nhắc trừ khi interview với c-level
- Gọn gàng, chuyên nghiệp nhưng không quá formal

Lộ trình ôn thi

## Lộ trình Ôn tập & Chuẩn bị (2 tuần)

### 📚 Kiến thức Nền tảng cần nắm vững

Week 1: Core Technical Skills

Ngày 1-2: Java & Spring Ecosystem
- Spring Boot fundamentals (dependency injection, auto-configuration)
- Spring Security, OAuth2, JWT
- JPA/Hibernate, transaction management
- Thực hành: Build REST API với Spring Boot

Ngày 3: Microservices Architecture
- Service decomposition strategies
- API Gateway (Kong/Zuul)
- Service mesh basics
- Thực hành: Thiết kế microservice cho e-commerce

Ngày 4-5: System Design Principles
- SOLID principles (thực hành refactoring code vi phạm SOLID)
- Common design patterns (tập trung: Factory, Builder, Repository, Strategy)
- Clean Architecture, Hexagonal Architecture
- Thực hành: Design hệ thống banking core

Ngày 6-7: DevOps & Observability
- Docker basics, Kubernetes concepts
- Monitoring (Prometheus, Grafana)
- Logging (ELK Stack)
- Tracing (Jaeger/Zipkin)

---

Week 2: Advanced & Leadership

Ngày 8-9: Performance & Security
- Concurrency in Java (CompletableFuture, parallel streams)
- Caching strategies (Redis)
- Database optimization (indexing, query tuning)
- Security: OWASP Top 10, encryption, secure coding

Ngày 10: Database Deep Dive
- ACID vs BASE
- CAP theorem
- SQL optimization
- NoSQL use cases (MongoDB, Cassandra)

Ngày 11-12: System Design Practice
- Design: Payment gateway
- Design: Real-time notifications
- Design: High-availability banking system
- Practice drawing architecture diagrams

Ngày 13: Leadership & Process
- Agile/Scrum practices
- Code review best practices
- Technical documentation standards
- CI/CD pipeline design

Ngày 14: Mock Interview & Review
- Practice coding problems
- Review weak areas
- Prepare questions for interviewer
- Review TechcomBank recent news

---

### 📖 Tài liệu Tham khảo

| Loại | Tài liệu | Link |
|------|----------|------|
| Book | Clean Code - Robert Martin | |
| Book | Clean Architecture - Robert Martin | |
| Book | Design Patterns - Gang of Four | |
| Book | System Design Interview Vol 1 & 2 | |
| Online | Baeldung Spring Tutorial | baeldung.com |
| Online | Martin Fowler's Blog | martinfowler.com |
| Course | Coursera: Microservices | |
| Course | AWS Cloud Practitioner (free) | |
| Practice | LeetCode (medium problems) | leetcode.com |

---

### 🎯 Checklist trước ngày phỏng vấn

- [ ] Hoàn thành 20+ LeetCode problems
- [ ] Có thể giải thích SOLID principles bằng code
- [ ] Design 2-3 systems từ đầu đến cuối
- [ ] Có project portfolio để demo
- [ ] Research TechcomBank strategy và recent news
- [ ] Chuẩn bị 5+ stories về leadership
- [ ] Đến sớm 15 phút
- [ ] Laptop/phone đầy pin, sạc dự phòng

Tư vấn nghề nghiệp

## Lời khuyên Sự nghiệp cho Expert Software Engineering tại TechcomBank

### 🚀 Lộ trình Thăng tiến

```
Officer (0-2 năm)

Senior Officer (2-4 năm)

Expert (vị trí này) ← Bạn đang ở đây

Principal / Team Lead

Engineering Manager / Architect

Director of Engineering / VP Engineering
```

Từ Expert → Principal (1-3 năm)
- Lead cross-team technical initiatives
- Drive engineering standards across organization
- Mentor multiple teams
- Represent engineering in strategic decisions

Từ Principal → Management Track
- Engineering Manager: Quản lý 5-10 engineers
- Tech Lead: Technical decision maker cho toàn bộ domain

---

### 💰 Mức Lương Kỳ vọng

| Cấp bậc | Kinh nghiệm | Lương tháng (VND) |
|---------|-------------|-------------------|
| Senior Officer | 3-5 năm | 25-40 triệu |
| Expert | 5-8 năm | 40-70 triệu |
| Principal | 8-12 năm | 60-100 triệu |
| Manager | 10+ năm | 80-150 triệu |

Lưu ý: TechcomBank thường offer cao hơn thị trường 15-20% để cạnh tranh. Lương thỏa thuận nên đàm phán dựa trên:
- Current salary + expectations
- Technical skills scarcity
- Leadership experience

Thưởng & Benefits:
- Performance bonus: 1-4 tháng lương
- Stock options (tùy cấp bậc)
- Healthcare premium
- Learning & development budget

---

### 🎯 Kỹ năng Cần Phát triển Thêm

Ngắn hạn (6 tháng):

| Kỹ năng | Tầm quan trọng | Cách học |
|---------|----------------|----------|
| Cloud (AWS/GCP) | ⭐⭐⭐⭐⭐ | AWS Solutions Architect cert |
| Kubernetes | ⭐⭐⭐⭐⭐ | CKA certification |
| Advanced Java (Reactive) | ⭐⭐⭐⭐ | Project Reactor, WebFlux |
| Database tuning | ⭐⭐⭐⭐ | Thực hành với large dataset |

Dài hạn (1-2 năm):

| Kỹ năng | Tầm quan trọng | Cách học |
|---------|----------------|----------|
| Technical Strategy | ⭐⭐⭐⭐⭐ | Học từ CTO/Architect |
| Executive Communication | ⭐⭐⭐⭐ | Present to leadership |
| Data Engineering | ⭐⭐⭐⭐ | Spark, Kafka, Data lakes |
| AI/ML fundamentals | ⭐⭐⭐ | Xu hướng ngân hàng số |

---

### 🌟 Văn hóa TechcomBank - Điều cần Biết

Điểm mạnh:
- Lương cạnh tranh top thị trường
- Cơ hội làm việc với tech stack hiện đại
- Văn hóa đổi mới, digital-first
- Nhiều room để experiment

Thách thức:
- Áp lực delivery cao (agile, sprint)
- Thay đổi nhanh, phải adapt liên tục
- Đôi khi work-life balance không ổn định
- Hệ thống legacy còn tồn tại song song

Lời khuyên từ người trong cuộc:
- "TechcomBank phù hợp với người thích thử thách, không ngại thay đổi"
- "Đầu tư vào cloud skills sẽ giúp bạn nổi bật"
- "Network nội bộ quan trọng - chủ động kết nối với các team khác"
- "Đừng ngại propose ý tưởng mới, họ welcome innovation"

Câu hỏi thường gặp

Vị trí Expert Software Engineering tại TechcomBank yêu cầu kinh nghiệm như thế nào?

Theo JD, bạn cần tối thiểu 5 năm kinh nghiệm trong ngành engineering và ít nhất 2 năm ở vị trí Team Lead. Ngoài ra, bạn cần có kinh nghiệm về kiến trúc phần mềm, dẫn dắt technical team, và quản lý việc deliver system/software. Đây là vị trí senior nên kinh nghiệm thực tế rất quan trọng.

Mình biết Java nhưng TypeScript hơi yếu, có nên apply không?

Có thể apply được nhưng nên chuẩn bị kỹ. TechcomBank dùng TypeScript cho web development, nhưng Java là ngôn ngữ backend chính. Bạn nên ôn lại TypeScript basics, đặc biệt là TypeScript với React/Angular, async patterns, và type system. Tốt nhất nên có ít nhất project nhỏ sử dụng TypeScript để demonstrate.

Lương cho vị trí này khoảng bao nhiêu? Mình đang có 6 năm kinh nghiệm, đang ở mức 45 triệu.

Với 6 năm kinh nghiệm ở vị trí Expert, bạn có thể kỳ vọng mức 50-70 triệu/tháng tại TechcomBank, có thể cao hơn nếu đàm phán tốt. Họ thường offer cao hơn thị trường 15-20%. Gợi ý: trả lời 'thỏa thuận' hoặc nêu range 55-65 triệu khi HR hỏi, đừng nói con số quá thấp. Nên tham khảo Glassdoor/VietnamSalary trước.

Phỏng vấn Expert Software Engineering có thiết System Design không?

Có, phỏng vấn System Design là phần bắt buộc ở vòng Architecture. Bạn sẽ được hỏi về thiết kế hệ thống như: thiết kế payment gateway, scale hệ thống từ 1000 lên 1 triệu users, so sánh microservices vs monolith. Nên ôn các tài liệu như 'System Design Interview' của Alex Xu và thực hành vẽ architecture diagrams.

Mình đang là Senior Developer, chưa có kinh nghiệm làm Team Lead chính thức. Có apply được không?

Khá khó vì JD yêu cầu rõ 'ít nhất 2 năm ở vị trí Team Lead'. Tuy nhiên, nếu bạn có kinh nghiệm lead một số dự án, mentor junior, hoặc acting lead khi Team Lead vắng mặt, bạn có thể diễn đạt thành ' informally led team'. Nhưng để an toàn, nên apply khi đã có 2+ năm thực sự ở vai trò lead.

TechcomBank có yêu cầu tiếng Anh như thế nào? Mình Toeic chỉ có 400.

JD ghi 'English as per organization's regulations' nhưng không nêu cụ thể. Với vị trí Expert, họ thường yêu cầu Toeic 500-650 hoặc tương đương. Nếu Toeic chỉ 400, bạn nên cải thiện trước khi apply, đặc biệt là speaking và reading (đọc tài liệu kỹ thuật, giao tiếp với team). Có thể thi thêm hoặc họcIELTS Academic.

Work-life balance tại TechcomBank IT như thế nào?

Thực tế khá varied giữa các team. Team core banking thường bận hơn (deadline sprint), còn team platform/infrastructure thì ổn định hơn. Nói chung, đây là môi trường fast-paced, bạn cần chuẩn bị cho những giai đoạn deadline cao điểm. Tuy nhiên, culture đang cải thiện, có flex time và WFH policy khá tốt.

Nên chuẩn bị gì cho vòng phỏng vấn với Director/CTO?

Vòng này tập trung vào leadership và vision. Chuẩn bị: 1) Hiểu chiến lược digital banking của TechcomBank, 2) Có opinion về engineering excellence, code quality, team culture, 3) Stories về mentoring, conflict resolution, technical decisions, 4) Questions cho họ về direction của tech team. Đây là cơ hội để show bạn không chỉ giỏi code mà còn là leader.

Chia sẻ từ cộng đồng

Ẩn danh 2024-09-15

Mình ứng tuyển vị trí này cách đây 3 tháng, passed 3 vòng technical rồi nhưng cuối cùng bị reject ở vòng panel. Lý do là 'not a culture fit'. Khá disappointed vì technical thì mình khá tự tin. Điều mình rút ra: phải research kỹ văn hóa TechcomBank, họ đề cao innovation và ownership.

T
Tuấn A*** 2024-10-02

Đang làm ở đây được 1.5 năm rồi. Về lương thì hài lòng, cao hơn chỗ cũ 30%. Tech stack cũng hiện đại, đang migrate sang microservices trên K8s. Nhưng mà sprint deadline hơi gấp, có tuần phải OT nhiều. Ai thích challenge thì ok, còn ai thích stable thì cân nhắc.

b
banker2024 2024-08-20

Tip cho ae: phỏng vấn vòng technical coding hỏi khá sâu về Java concurrency. Mình bị hỏi về CompletableFuture, synchronized vs ReentrantLock, memory model trong JVM. Ôn kỹ phần này. System design thì focus vào payment/transaction system.

Ẩn danh 2024-09-28

HR hơi chậm trong quá trình tuyển dụng. Từ lúc apply đến khi nhận offer mình mất gần 2 tháng. Nhiều lúc tưởng đã rớt rồi. Cứ kiên nhẫn, follow up định kỳ thôi.

L
Linh P*** 2024-07-15

Mình chuyển từ fintech sang. So sánh thì TechcomBank lương cao hơn nhưng áp lực cũng nhiều hơn. Phù hợp với người trẻ, chưa có gia đình. Điểm cộng là được làm việc với hệ thống lớn, scale cao.

Ẩn danh 2024-10-10

Đừng quên ôn Design Patterns! Vòng architecture hỏi rất nhiều về khi nào dùng pattern nào, trade-offs. Mình bị hỏi: khi nào dùng Strategy thay vì IF-ELSE, tại sao Repository pattern tốt hơn DAO. Khá chi tiết.

Ứng tuyển ngay

Ứng tuyển trên website gốc

Bạn sẽ được chuyển đến trang tuyển dụng chính thức của Techcombank

Chuẩn bị thi tuyển

Luyện đề thi tuyển dụng Techcombank trên thithu.com

Luyện thi Techcombank

Chuyên môn / Từ khoá

CNTT / IT techcombank
T
thithu.com

Miễn trừ trách nhiệm: Nội dung câu hỏi trên thithu.com chỉ mang tính chất luyện tập và tham khảo, không đại diện cho đề thi chính thức của bất kỳ tổ chức nào. Chúng tôi không chịu trách nhiệm về kết quả thi thực tế của người dùng.