As I complete 5 years in the software industry, in this blog, I will try to organize the tips, nuggets of experience, and advice that I wish I had when I first started my journey.

A little background about me — as a student I really wanted to pursue higher studies in Physics (may still pursue it someday), though I had a deep interest in Computer Science as well. …


What is Neo4j?

“The world’s most flexible, reliable and developer friendly graph database as a service.” It is an online database management system with Create, Read, Update and Delete (CRUD) operations that stores data as a graph.

What is a graph database?

If you are coming from my previous blog about setting up Neo4j, skip this and the next section. Go to Data modelling directly.

A graph database, also called a graph-oriented database, is a type of NoSQL database that uses graph theory to store, map and query relationships.
A graph database is essentially a collection of nodes and edges.

A graph is composed of two elements: a…


NOTE: Kindly use this blog to learn about basics of microservices architecture and considerations before opting for it; and not as guide to transition to it.

Microservices — also known as the microservice architecture — is an architectural style that structures an application as a collection of services that are

  • Highly maintainable and testable
  • Loosely coupled
  • Independently deployable
  • Organized around business capabilities
  • Owned by a small team

The microservice architecture enables the rapid, frequent and reliable delivery of large, complex applications. It also enables an organization to evolve its technology stack.

Types of systems

  • Monolithic architecture (one service, one database)
  • SOA (Service oriented…


Those who are familiar with Django, a Python web framework, use migrations on a regular basis to register new models and to edit existing models. Error — ‘CyclicDependencyError ’— occurs when the migration cannot be done due to interdependence of two models’ structure over each other.

Reading about graph data structures, and hence about topological sorting, it got me thinking if this is what Django uses as well to make sure all migrations are in order and there is no cyclic dependency. A simple look into the Django library code reveals that it does in fact use topological sorting. …


What is Neo4j?

“The world’s most flexible, reliable and developer friendly graph database as a service.” It is an online database management system with Create, Read, Update and Delete (CRUD) operations that stores data as a graph.

What is a graph database?

A graph database, also called a graph-oriented database, is a type of NoSQL database that uses graph theory to store, map and query relationships. A graph database is essentially a collection of nodes and edges.

A graph is composed of two elements: a node (or vertex) and a relationship (or edge). Each node represents an entity (a person, place, thing, category or other piece of data)…

Siddhartha Sehgal

Backend developer. Interested in building big systems with high availability. https://www.linkedin.com/in/okaysidd/ https://leetcode.com/okaysidd/

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store