Job Description :

Distributed Systems Engineer (Go)

100% Remote

Job Summary

We are seeking a Distributed Systems Engineer with strong experience in Go (Golang) to design, build, and maintain highly scalable, reliable, and fault-tolerant distributed systems. The ideal candidate will have a solid understanding of microservices architecture, concurrency, and cloud-native technologies.

Key Responsibilities

  • Design, develop, and maintain scalable distributed systems using Go.

  • Build and optimize microservices and APIs for high availability and performance.

  • Implement reliable data storage, caching, and messaging solutions.

  • Ensure system reliability, fault tolerance, and observability.

  • Write clean, efficient, and well-documented code.

  • Participate in architecture discussions and design reviews.

  • Troubleshoot and resolve performance and scalability issues.

  • Collaborate with cross-functional teams (product, DevOps, QA, frontend).

Required Skills & Qualifications

  • Strong proficiency in Go (Golang).

  • Solid understanding of distributed systems concepts (consensus, replication, partitioning, CAP theorem).

  • Experience with microservices and REST/gRPC APIs.

  • Knowledge of concurrency, goroutines, and channels.

  • Experience with databases (SQL and NoSQL).

  • Familiarity with message brokers (Kafka, RabbitMQ, NATS, etc.).

  • Experience with containerization (Docker) and orchestration (Kubernetes).

  • Knowledge of Linux, networking fundamentals, and system design.

  • Experience with CI/CD pipelines and version control (Git).

Preferred Qualifications

  • Experience with cloud platforms (AWS, Azure, or GCP).

  • Knowledge of observability tools (Prometheus, Grafana, OpenTelemetry).

  • Experience with distributed caching (Redis, Memcached).

  • Familiarity with service meshes (Istio, Linkerd).

  • Understanding of security best practices.

             

Similar Jobs you may be interested in ..