Mô tả công việc
BLogic Systems builds POS systems for the U.S. restaurant and bar market. Our product team in Ho Chi Minh City works directly with our US-based team, and our software runs live in restaurants across the United States — quality issues reach real customers immediately.
We are hiring for two levels: a Fullstack Leader to take charge of the technical direction and delivery of the fullstack team, and a Senior Fullstack Engineer to strengthen the team's core. The Leader role is a strategic position for someone with 6+ years of experience, including proven experience leading an engineering team. Strong Senior candidates without management experience are also encouraged to apply for the Senior track.
1. Fullstack Development (both levels)
- Design and implement robust, scalable and high-performance server-side logic with .NET 8+ (and .NET Framework for legacy modules), exposing clean RESTful APIs.
- Build new features with Angular (v18+), TypeScript and Tailwind CSS, following Clean Architecture and component-based design.
- Handle complex asynchronous data streams and state management with RxJS (switchMap, combineLatest, custom operators).
- Work with SQL Server and PostgreSQL. Diagnose and resolve performance bottlenecks across the stack (application code, SQL queries, frontend rendering) so the system handles high concurrent loads smoothly.
- Use CapacitorJS where applicable to share web code with our mobile apps.
- Work closely with Product Owners, BAs, QA, Mobile and POS teams to define clear API contracts and data models.
2. Architecture & Quality Ownership
- Contribute to system design and architectural decisions (Senior); own the technical direction and architecture across the product line (Leader), applying Clean Architecture, DDD or CQRS where the business logic calls for it.
- Treat business-critical flows (order submission, payment, surcharge / dual pricing, receipt printing, offline mode, backward compatibility between POS versions) as production-critical: a one-cent discrepancy is an incident, not a minor bug.
- Own the quality of what you ship. Bugs found by customers, IT Support or leadership instead of by automated tests and code review are your primary KPI (Leader: for the whole team).
- Maintain and improve CI/CD pipelines and cloud-based services (AWS/Azure), with clear quality gates before anything reaches production.
3. Team Leadership & Delivery (Leader track; Senior supports)
- Lead, mentor and develop the fullstack team; set KPIs and career development plans for each member. Senior engineers mentor junior members through thorough code reviews.
- Define coding standards, testing practices and best practices, and drive them across the team.
- Turn requirements from Product Owners and BAs into clear tasks, estimate and plan sprints, and manage priorities, risks and delivery commitments across projects and releases.
- Coordinate with the QA, Mobile and POS teams and with US-based stakeholders.
- Establish and enforce release readiness: nothing goes to production without meeting clear quality criteria. You have the authority to hold a release.
- Take part in hiring and onboarding, and build a collaborative, high-performing team.
- Stay hands-on: keep coding on critical features, so your decisions stay grounded in the real codebase.
4. AI-Driven Engineering
- Use AI coding agents in daily work (code generation, refactoring, test writing, code review, debugging, documentation) to raise productivity, while owning the quality and security of everything you ship.
- Leader: define and roll out how the team works with AI: agent roles and skills, a shared agent harness, verification loops, and AI code review in the pull-request flow.
- Stay up to date with .NET, Angular and AI tooling, and share ideas on how to apply them in our products.
Yêu cầu công việc
Must have
- Experience: 4+ years of professional experience in fullstack development, with a proven track record of designing and delivering large-scale systems. For the Leader track: 6+ years, including 2+ years leading a team or acting as a tech lead (required for Leader, a plus for Senior).
- Proficiency in C#, ASP.NET Core, Entity Framework Core and Dapper. Strong understanding of OOP, SOLID and Design Patterns.
- Database design and advanced SQL optimization on SQL Server and PostgreSQL (indexing, execution plans).
- Strong JavaScript and TypeScript, HTML and CSS (Tailwind CSS preferred), with hands-on experience in Angular and RxJS. You produce clean, efficient, scalable and well-documented code that follows coding standards.
- Familiarity with distributed systems and message brokers (RabbitMQ, Kafka or AWS SQS).
- Experience with unit testing (xUnit/NUnit) and automated testing strategies.
- Understanding of frontend performance optimization and web security (XSS, CSRF, authentication flows).
- Experience with systems that handle money: you know why a one-cent discrepancy in a payment flow is an incident.
- Strong root cause analysis skills: you go beyond fixing the symptom to understanding why it happened.
- Leader track: strong architecture skills (able to make and defend design decisions and balance speed, quality and technical debt), people management, agile delivery, estimation, and stakeholder communication.
- The professional confidence to hold a release that does not meet quality criteria, even under schedule pressure.
- English: Upper-Intermediate (reading and writing). You must be comfortable working with US-based documentation and requirements; the ability to communicate directly with our US team is required for Leader.
- Bachelor's degree in Computer Science, Engineering or a related field (or equivalent practical experience).
- Passion for programming and solving complex problems, a can-do attitude, and strong teamwork.
Working with AI — required, not optional
- Proficient, hands-on experience with AI coding agents in daily development work.
- Able to set up an AI agent team: define agent roles, skills and gates so a feature can be split across several agents and still come back consistent.
- Proficient in prompt engineering: you can turn a vague requirement into instructions an agent executes reliably, and keep it on the project's conventions.
- Experience setting up an agent harness: project-level instruction files, custom commands and skills, sub-agents with scoped tools and permissions, and hooks for the rules that must always hold.
- Loop engineering: you build an objective verifier and let the agent iterate against it instead of reviewing output by eye. On the back end that means unit tests, type checks and architecture or lint gates; turning a rule you would otherwise repeat in code review into an automated check is the core skill. On the front end it means more than "it compiles": you also give the agent a way to observe the rendered result (for example a browser-automation screenshot or an accessibility snapshot). Candidates who have closed that visual loop are rare and we want them.
- Experience setting up AI code review: automated review in the pull-request flow, tuned so it catches real defects instead of producing noise everyone learns to ignore.
- Experience building an autonomous agent team (agents that plan, implement, review and verify, with a human at the gates) is a strong advantage.
- Critical evaluation of AI output: you can spot a diff that looks correct and quietly breaks a business rule, and a component that renders fine in the demo and falls apart on real data or a slow network.
- You are empowered by AI, and you are accountable for everything it produces on your behalf. This is the single most important expectation of the role. We want you to lean on AI heavily; "the AI wrote it" is never an explanation for a defect that reached production.