
Senior Officer, Software Engineering (40001157)
Job Description
Key Accountabilities (1)
1. Low-Level Architecture Design & Development
- Contribute to low-level architecture design and develop software components that meet efficiency, scalability, and security standards.
- Work closely with architects and senior engineers to optimize system design and implementation.
2. Technical Mentorship & Process Improvement
- Guide Officer-level engineers, providing mentorship on best practices, coding standards, and development workflows.
- Identify areas for process improvements and drive adoption of engineering best practices within the team.
3. Code Quality & Optimization
- Lead peer code reviews, enforce coding standards, and improve overall code maintainability.
- Optimize software for performance, scalability, and security, ensuring high reliability in production environments.
4. Testing & Debugging
- Conduct unit testing, integration testing, and contract testing to ensure software reliability.
- Collaborate with QE teams to diagnose, troubleshoot, and resolve complex defects in a timely manner.
- Promote test automation to improve software stability and release efficiency.
5. Technical Documentation
- Create and maintain clear, structured documentation, including:
- API specifications
- System design documents
- Coding and architectural guidelines
- Ensure documentation is regularly updated and aligned with system changes
Key Accountabilities (3)
Key Relationships - Direct Manager
Manager, Software Engineenring/ Team Lead, Software Engineenring
Key Relationships - Direct Reports
Key Relationships - Internal Stakeholders
Division, units, branches/subsidiaries of TCB
Key Relationships - External Stakeholders
Application/solution provider partners, IT departments of key customer businesses
Success Profile - Qualification and Experiences
Qualifications:
- Bachelor's or Master's Degree in Computer Science, Software Engineering, Information Technology, or a related field.
Work Experience:
- At least 7+ years of experience in the engineering field.
- Proficiency in programming languages related to application development.
Backend: Java
Web: Typescript
Mobile: Swift, Kotlin, Dart
- Experience in managing technical teams and mediating in the work environment.
- Experience in leading and managing system/software delivery.
- Experience in both architecture and software design implementation.
SOLID Principle
Design Patterns
Microservices architectures
Observability (monitoring, logging, tracing)
Compiling, Runtime deep understanding
- Experience in advanced aspect of engineering field:
High performance, concurrency
Security best practices
Emerging technology
Foreign Language: - English as per the organization's regulations