Backend engineer on an enterprise platform for managing network infrastructure data, working on Java REST services, a MongoDB-to-graph data integration, and related supporting systems.
Java Backend & REST Services
- Developed REST APIs in Java / Spring Boot for a microservices platform deployed on Kubernetes, serving several internal client applications.
- Worked with MongoDB as the primary datastore and added a Redis caching layer to reduce repeated reads on frequently hit endpoints.
- Implemented role-based access control through API middleware, with permission checks applied at the route level.
- Built master/sub-project relationships in the data model, including roll-up aggregation of child records to parents, supported by MongoDB indexes for reporting queries.
- Added server-side validation for domain rules — preventing circular parent/child references and invalid state changes on completion and deletion.
- Integrated Kafka for event messaging between services and S3 for document/attachment storage.
Data Integration — MongoDB to Neo4j
- Built a Python service to move data from MongoDB into a Neo4j graph database, used for relationship-based queries that were slow against the document store.
- Supported two ingestion paths: a full load for initial migration and an incremental change-data-capture (CDC) path driven by MongoDB change streams.
- Used Cypher MERGE/DELETE so repeated or replayed events produced the same graph state without duplicate nodes or relationships.
- Staged change events as files on Linux/S3 (CSV for batch, JSON/CSV for CDC) before loading into the graph.
- Added a retry worker that re-processes failed records with a configurable retry count and interval, tracks per-record status, and sends email notifications on failures.
- Modeled network assets and their connections as a graph to support multi-hop traversal and impact analysis; managed the service through GitLab CI across dev, QA, UAT, and prod.
Environment: Java, REST APIs, MongoDB, Neo4j (Cypher), Redis, Kafka, Socket.io, Amazon S3, LDAP, Kubernetes, Helm, Docker, Jenkins, GitLab, Linux.