Announcing CRM Journey with RavenDB

This is the first of a series of blog posts sharing some knowledge about how to develop a real-world software using RavenDB. The goal is to show the benefits of adopting RavenDB as the database and some lovely techonologies for a complex domain.

Why a CRM?

Quoting Wikipedia:

Customer relationship management (CRM) is an approach to managing a company’s interaction with current and potential customers. It uses data analysis about customers’ history with a company and to improve business relationships with customers, specifically focusing on customer retention and ultimately driving sales growth.

One important aspect of the CRM approach is the systems of CRM that compile data from a range of different communication channels, including a company’s website, telephone, email, live chat, marketing materials, and more recently, social media. Through the CRM approach and the systems used to facilitate it, businesses learn more about their target audiences and how to best cater to their needs.

CRM is a very complex domain, and I am sure that we could learn a lot working with it.

In this series, we will cover a lot of interesting topics such as microservices, CQRS, SPA and, of course, RavenDB.

Why RavenDB?

If you know nothing about NoSQL, it is time to solve it. Nothing better to start than learning a powerful and easy-to-use database such as RavenDB.

RavenDB is a NoSQL document database, safe by default and optimized to efficiency. In this series, we will use RavenDB 4.0 RC which is fast and multi-platform.

As professional developers, we need to break out the relational-only mindset and move on. RavenDB allows us to store arrays and complex objects in single documents (instead of multiple records into multiple tables), to use human-friendly ids instead of meaningless integers, and to query data in a very efficient way.

Using RavenDB, we minimize the need for a clear separation between the domain and the persistence model.

If you are coming from the “relational world,” RavenDB makes your life easier supporting ACID transactions and providing a familiar programming model.

RavenDB schema-free collections fit perfectly with CRM.

What to expect?

A lot of fun and code, for sure. No more “hello world” examples.

Before starting, I strongly recommend you learn the basics about RavenDB subscribing the Bootcamp (It’s really easy to follow).

The real world demands real code. Welcome to CRM Journey with RavenDB.

Compartilhe este insight:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Mais insights para o seu negócio

Veja mais alguns estudos e reflexões que podem gerar alguns insights para o seu negócio:

In a previous post, I started an elementary search library using C#. Now, I will improve it adding a Porter...
Implementing synchronization for multiple threads in .NET is easy. There are a lot of options for doing that – for...
No modelo C4, o diagrama de contexto descreve, com um nível de abstração bem elevado, um sistema de software indicando...
Há, muito, muito tempo atrás Em 2002, conheci o projeto SharpDevelop – uma ousada tentativa de criar, do zero, em...
In the previous post, I asked why the following code behaves differently when compilation is made in Release and Debug...
Na vida, todos temos “momentos traumáticos”. Ou seja, aqueles momentos que, de repente, mudam tudo e, ao mesmo tempo, de...