Requirements
- Bachelor's degree or above in Computer Science or related field.
- At least 7 years of development experience, including 3–5 years in full stack development or core backend development.
- Has prior experience in retail industry (preferred).
- Ability to speak and communicate effectively in English
- Proven experience leading projects independently, capable of making architectural and technical decisions in complex scenarios.
- Proficient in Git and common team collaboration workflows (Git Flow, Code Review).
Front End Skills:
JavaScript / TypeScript (Required)
- React / Redux / RTK Query (Required) with strong understanding of componentization, state management, and performance optimization.
- Proficient in TailwindCSS (Required), with responsive layout and component-based design.
- Familiar with server-side rendering and full stack capabilities (nice to have).
Experience with frontend engineering tools (Webpack/Vite, Lint, testing frameworks such as Jest/Mocha).
Back End Skills:
Deep understanding of REST API and GraphQL design principles (must have REST at minimum).
- Strong security awareness, able to implement basic OWASP Top 10 protections.
Languages & frameworks:
- PHP / Laravel / CodeIgnitier (Required): familiar with medium-to-large project architecture patterns (DDD/Clean Architecture preferred).
- / Express / NestJS (nice to have).
Database & caching:
PostgreSQL / MySQL (Required): complex queries, sharding, transactions, and locking mechanisms.
- Redis (Required): caching, distributed locks, rate limiting, and queues.
- MongoDB / ClickHouse (NoSQL/OLAP, nice to have).
- Distributed systems & middleware: experience with message queues (RabbitMQ/Kafka, either is sufficient).
Containers & delivery:
Docker / docker-compose (Required): image optimization and multi-stage builds.
- Kubernetes (Nice to have): service orchestration, load balancing, and auto-scaling.
- CI/CD pipeline experience (GitHub Actions / GitLab CI).
Responsibilities:
- Lead the architecture design and technology selection of core business systems to ensure scalability, stability, and high performance.
- Develop, optimize, and refactor complex business modules to improve code quality and efficiency.
- Drive engineering practices: CI/CD, automated testing, code review, monitoring, and logging systems.
- Mentor and train junior and mid-level developers, conduct technical solution reviews, and promote best practices.
- Participate in product requirement analysis and translate business logic into efficient technical solutions.
- Handle performance tuning and troubleshooting in high-concurrency and high-availability scenarios.