Well I’m a little late to the party this month, I got my weeks mixed and was only reading about this month’s T-SQL Tuesday as the community was posting their responses.
So here we go, finally.
This month’s ask from Josephine was to consider our understanding or expectations from data job roles. When we see a job title – whether in someone’s email signature, CV, or job spec – we have our own understanding of that role and it’s responsibilities. The expectations for these roles will vary from business to business so it’s interesting to see the community’s perspective on these roles based on their own experiences.
First up I wanted to start with two of the broader job roles I see which have their own interesting considerations:
- DBA : this is your default database specialist role for an organisation. Typically you’ll be dealing with anything and everything related to the data – the platform, security, performance, development, ETL, and the support for those areas too
- Developer : this is the coder, generally the one dealing the user facing side of the code as opposed to the data. You’ll be writing, deploying, debugging and maintaining existing code within the organisation
Generally when I see these types of roles advertised it’s for smaller organisations which need a broad range of skills within their team. The quality of these positions can vary wildly however in my experience provide the greatest personal opportunities for the right person.
Whilst some of these roles may be looking for ‘another pair of hands’, they can also provide incredible opportunities. These smaller teams tend to need a broad knowledge across a business which can provide a wide base of knowledge to build your own position within the team. If the team is small but growing then there can also be the chance for an individual to grow their skills alongside the team, creating their own niche to grow and specialise into.
Now let’s move on to more specialised and defined positions which come to mind when I think about data roles specifically:
- Production DBA – this role would be focused on the platform, reliability, maintenance, monitoring – essentially keeping everything running smooth and having an understanding of the state of the platform at any time. This role is also great to provide feedback on where the pinch points are and where to start mitigating those
- Development DBA : this is effectively your software developer but for databases. It’s writing code, deploying, tuning and all around building and maintaining the functional code around the data environment. This is the role that takes the requirements – be they from the operational or technical leads – and turns them into functioning code
- Data Engineer : the engineer is the plumber making sure that data keeps flowing through the organisation. Similar to the Development DBA above there’s a lot of building solutions here however they tend to be related to automation and data flows – such as ETL – rather than operational code. Automation, consistency and performance are key in this role
- Data Warehouse Developer : development of a data warehouse tends to have similar responsibilities as a Development DBA and Data Engineer but with the necessity of also providing context to the data through a robust logical schema designed for accessibility. This role typically deals with the largest of data sources so performance is key to make sure data is available in a timely manner
- Data Scientist : with the Data Warehouse Developer building the schema to hold the magnitudes of key data within an organisation, a Data Scientist can leverage that structured (or unstructured) data to provide insights within the organisation. Whereas a role like MI Developer may be providing reporting to say what has happened, the Data Scientist will be looking for context to help explain why something happened, and what may happen in the future
- Data Architect : these architects are a layer up from the developers and engineers who are building specific solutions. This role will look at how those solutions integrate and understand them in the context of the wider organisation. They can use this knowledge to help shape future solutions or provide recommendations on more strategic decisions for the direction of data within a business over the medium to longer term
- Solution Architect : similar to the data architect role, these folks have a high level understanding of the workings of various solutions within an organisation and can help shape those to build a road-map moving forwards. In addition to the data element of the solutions however this would incorporate all solutions in the stack, for example the front end solutions, middle-ware, or 3rd party tooling and integrations
This is nowhere near an exhaustive list of roles which can be found within data teams. These are the ones that come to mind based on my experiences with those roles and interactions with some fantastic people I’ve had the pleasure to work with in those roles previously.
Overall I find the landscape of data roles and opportunities very exciting, and that’s without any consideration for adjacent roles dealing with unstructured data, software development, DevOps, or cloud positions which are continually broadening.
I guess the question left hanging here is – What is your role, is it what you thought it was going to be, and would there be another title which would more effectively convey your position within your team?