Roles & Responsibilities:
- Design, develop, and maintain backend services and APIs using Go (Golang).
- Build scalable, distributed, and event-driven systems capable of handling thousands of transactions per second.
- Design service interfaces, data flows, and integration patterns that support independent deployment, horizontal scaling, and future growth.
- Apply sound software design principles, appropriate abstractions, and proven architectural patterns without introducing unnecessary complexity.
- Identify and resolve performance bottlenecks, concurrency issues, and resource constraints.
- AWS Cloud Infrastructure and Dynamic Scaling.
- Develop and deploy production services on AWS using appropriate computer, networking, storage, and managed service offerings.
- Implement horizontally scalable services that dynamically adjust capacity in response to changing traffic and processing demand.
- Deploy and operate containerized workloads using Kubernetes.
- Configure and optimize autoscaling, resource allocation, health checks, and service recovery.
- Apply infrastructure-as-code and automated deployment practices to ensure repeatable, consistent environments.
- Consider performance, availability, security, and cloud operating costs when making engineering decisions.
- Build asynchronous, event-driven processing pipelines using Apache Kafka.
- Design reliable message producers and consumers, including appropriate handling of retries, duplicate messages, ordering, and processing failures.
- Design and optimize relational database schemas, SQL queries, indexes, transactions, and data migrations.
- Design, develop, and optimize NoSQL data models using Couchbase, ensuring efficient data access, high throughput, scalability, and performance in distributed systems.
- Understand data consistency, concurrency, transaction boundaries, and the trade-offs between relational and NoSQL storage.
- Ensure data integrity and resilience across distributed services.
- Quality, Reliability, and Production Operations.
- Write clean, maintainable, well-documented code supported by automated unit, integration, and appropriate end-to-end tests.
- Participate constructively in code reviews, design reviews, and technical discussions.
- Instrument services with meaningful logs, metrics, traces, dashboards, and actionable alerts.
- Troubleshoot production issues through systematic investigation and root-cause analysis.
- Design for failure, including dependency outages, traffic spikes, timeouts, partial failures, and message-processing errors.
- Participate in production support and incident response as appropriate for the team.
- Continuously improve service performance, reliability, security, and maintainability.
- Translate business and product requirements into practical technical designs and deliverable work.
- Own assigned features and services from initial design through implementation, deployment, and ongoing operation.
- Communicate technical decisions, risks, dependencies, and trade-offs clearly.
- Collaborate with other engineers, product stakeholders, and infrastructure teams.
- Contribute to engineering standards and help improve development practices across the team.
Requirements:
- Minimum 3 years of professional software engineering experience building and operating production backend systems in an AWS or comparable cloud-native environment.
- Strong, hands-on proficiency in Go (Golang) for production backend development.
- Demonstrated experience designing, building, and operating services handling thousands of transactions per second, with the ability to explain how throughput and performance were measured.
- Practical experience implementing dynamic scaling and horizontal scaling for production workloads.
- Hands-on experience deploying and operating containerized applications using Kubernetes.
- Practical experience with Apache Kafka, including producers, consumers, topics, partitions, consumer groups, and failure handling.
- Hands-on experience with relational databases (RDBMS) and NoSQL databases, specifically Couchbase, including data modelling, querying, indexing, and performance optimization.
- Strong understanding of RESTful APIs, service integration, concurrency, and distributed systems fundamentals.
- Experience with automated testing, version control, code reviews, and CI/CD pipelines.
- Understanding of production monitoring, troubleshooting, performance optimization, and service reliability.
- Strong problem-solving skills, sound technical judgment, and the ability to work independently while collaborating effectively with a team.
- Experience with AWS services such as EKS, EC2, ECS, Lambda, S3, RDS, DynamoDB, SQS, or related services, as relevant to the architecture.
- Experience with Infrastructure as Code using Terraform, AWS CDK, or CloudFormation.
- Familiarity with Docker, Helm, Kubernetes autoscaling, and resource management.
- Experience with observability tools such as Prometheus, Grafana, Open Telemetry, or CloudWatch.
- Understanding of distributed system reliability patterns, including idempotency, backpressure, circuit breakers, rate limiting, and graceful degradation.
- Experience with load testing, capacity planning, latency analysis, and performance profiling.
- Knowledge of cloud security fundamentals, including IAM, least-privilege access, secrets management, encryption, and secure API design.
- Experience optimizing cloud infrastructure for cost and operational efficiency.
Pay: RM8,000.00 - RM12,000.00 per month
Benefits:
Work Location: Hybrid remote in Kuala Lumpur (Kuala Lumpur)