Back to Projects
Backend

GO Followers — Social Graph Service

A Go microservice with Neo4j and Docker for managing user-following relationships.

Tech Stack

GoNeo4jDockerMicroservicesSOA

Overview

A backend microservice written in Go that models and manages user-following relationships using a Neo4j graph database. Built as part of a Service-Oriented Architecture (SOA) team project (Team 36), the service is containerized with Docker and exposes an API for creating and querying follower/following connections between users — a pattern common in social platforms.

01The Problem

Efficiently modeling social graph data (who follows whom) in a way that scales well and allows fast relationship queries — something relational databases handle poorly at scale due to expensive recursive JOIN operations.

02The Solution

Chose Neo4j as a graph database to natively represent user nodes and follow edges. Wrapped the service in Go for performance and containerized it with Docker for easy deployment within the broader SOA architecture. The service exposes clean REST endpoints for follow, unfollow, and relationship queries.

03The Outcome

A production-style microservice that integrates cleanly into a larger SOA system, demonstrating knowledge of graph databases, Go backend development, Docker containerization, and service-oriented design principles.