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
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.