Database expert

Database expert

Managing the data access patterns and storage.

The Database expert

Updated 18th Mai 2021

A good Database expert is a very valuable asset. Applications, programming languages can come and go relatively quick — as any front-end developer can confirm. The data, however, is usually one of the elements that remains for longer. The choice of database can have an impact in data integration, information extraction, networking, program analysis, security, and affect the choice of cloud computing and machine learning platforms.

Relational Databases

The relational database model remains the most popular, although NoSQL databases have been gaining usage in specific use cases. Traditionally relational databases — like PostgreSQL — have added features to address some of these use-cases, without the need to switch to a NoSql database.

Some of the most popular relational databases are MySQL, PostgreSQL, SQL Server, Oracle

Some fo the most popular NoSQL databases are MongoDB, Cassandra, ElasticSearch, DynamoDB.

The Database expert has experience with and can investigate problems with several Databases, and knows all the quirks of the database of choice, saving a lot of time exploring dead-ends when a problem arises.

Skills

Query optimization

Getting only the data needed, and querying it efficiently.

Data normalization

Knowing when to normalize the data, but also knowing when not to — for performance or replication reasons — is a delicate balance between a clean concept and practical concerns.

Backups

Performing backups and restoring while minimizing impact or downtime is very important. Data loss and data protection is crucial. The trust of your customers depends on it.

Security

Keeping the minimum permissions, monitoring usage, and managing credentials in case of server breach can determine if a data breach is minor or catastrophic. With GDPR, this is a more serious concern than ever, and it can have serious legal consequences.

More exotic databases

Key-value databases like DynamoDB, or Graph-based databases with languages like Datalog and databases like Datomic can expand the options available to work with the database.

While a lot of engineers will not run into most of these more unsual systems — compared to the ubiquity of relational databases —, they can make specific usages a lot more efficient or approachable. They are worth considering and knowing about.

Analytics, for instance, is a use-case that does not usually require real-time processing and it is biased towards reading data. Other uses, such as the backend for a multiplayer game or a social media site, might be biased towards writes, and may accept different levels of drift between the data.


To expand your skills

Here are some resources to expand your skills as a .

Cross-platform with Xamarin

https://dotnet.microsoft.com/apps/xamarin/cross-platform

Overview of .NET in Unity

https://docs.unity3d.com/Manual/overview-of-dot-net-in-unity.html

Learning Python

https://docs.python-guide.org/intro/learning/

Open-source and crowd-sourced list of conferences around software development

https://confs.tech/