Skip to content

aleta-systems/aletasystems.roles.data.engineer.phase2

Repository files navigation

Technical Interview - Data Engineer

This technical evaluation is aimed at senior level data-engineers.

The evaluation is designed to asses if a candidate possesses the essential Tech Skills that are needed for this role such as

  • Strong T-SQL knowledge, stored-procedures, OPENJSON
  • Strong understanding of Dimensional/Kimball/Snowflake data-models
  • Good Understanding of DevOps processes
  • Good understanding of Docker specifically able to install and run docker-compose -f "docker-compose.yml" up -d --build

The evaluation aims to be as realistic as possible, all tasks are Tickets within the .\TicketsTask folder.

Note: Your evaluation email will outline what tickets need to be completed.

System Requirements

You will need access to a machine (Windows/Mac/Linux) with the following installed.

Important: Docker must be running in Linux container mode Tip: If you run into any issues with Docker, first step is to restart Docker. (Especially on Windows)

default SQL Server Credentials

  • SQL Server Login: sa
  • SQL Server Password: P@ssw0rd! (or value of SQL_SERVER_PASSWORD in .env file)
  • SQL Server Port: 14333

Getting Started

Github:

  1. Click on the Use this template and create a copy of this repository
  2. Optionally and recommended, please set repository to Private

On your PC:

  1. Clone the copy of the repository you created to your local machine (not this repo)
  2. Install Docker and required tools if not done already

Quick Start:

  1. Start docker-compose -f "docker-compose.yml" up -d --build
  2. wait up-to a minute (to be safe)
  3. connect to the database
  4. if there is no database called datawarehouse, restart docker and try again.
  5. review execution logs docker-compose logs -f for any problems (-f is follow)

Interview Tasks:

  1. The tasks are contained within .\TicketsTask folder. (Please note your email will supersede this step)
  2. Save your OBJECT scripts in .\db_Datawarehouse\sql\* appropriately.
    1. Flyway is the build tool used.
    2. Please read more here
    3. You can also review existing files as examples
  3. If your solution drifts from TSQL, please include instructions in a markdown file called instructions.md

Submission:

If your email contains information on submission please use that.

  1. Invite GitHub User to your repo Under settings/collaboration
  2. add @kgeorge314 as a collaborator

Some Useful Commands:

  • To Stop docker-compose -f "docker-compose.yml" down
  • To Start docker-compose -f "docker-compose.yml" up -d --build
  • To see running images docker ps -a
  • To remove all container (use with caution if you have other containers) docker ps -a --format '{{ json .}}' | ConvertFrom-Json | %{ docker rm "$($_.id)" -f }
  • To remove images
    • Flyway: docker rmi boxfuse/flyway:5.2.4
    • InitTools: docker rmi aletasystems/tsqlrunner
    • SQL Server docker rmi mcr.microsoft.com/mssql/server

About

Technical Interview (Phase 2) - Data Engineer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published