Entwickleraufgabe

Bitte baue folgende Applikation
Eine API soll zur verfügung stehen, an der eine Person/App oder Frontend Dateien hochladen kann. Diese Dateien sollen in einem geeigneten Backend abgelegt werden. Beim Hochladen soll es möglich sein weitere Metadaten einzugeben. Die Datei soll im Nachgang auch wieder abrufbar sein.
  • Es existiert eine API in der AWS, an der Dateien/Dokumente hochgeladen werden können
  • Beim Upload der Datei können folgende Metadaten angegeben werden: 
    - Name
    - Ersteller (des Dokuments)
    - Benutzer (Uploader)
    - Ein flaches Objekt mit beliebigen Metadaten die der Benutzer mitgeben möchte
  • Die größe der Dateien kann beliebig sein
  • Ich kann nach Dateien suchen (möglichst nach allen hinterlegten Metadaten). Ergebnis ist eine Liste mit Datei-IDs. Ich bekomme nur die Ergebnisse angezeigt von Dateien die ich auch hochgeladen habe.
  • Mit einer ID kann ich eine Datei herunterladen.
Ablauf und Umfang
  • Du bekommst von uns ein AWS-Konto mit dem du Zugriff auf alle Services der AWS hast.
  • Du kannst deine Frameworks und Programmiersprache frei wählen.
    Ausgeschlossen sind nur pseudo Sprachen wie z.B. Brainfuck oder Whitespace
  • Ergebnisse sind bitte in einem public Github/Gitlab Projekt oder Repository hinterlegt. Den Link uns dann bitte zukommen lassen
  • Du hast so viel Zeit wie du willst. Wir gehen davon aus, dass die Aufgabe in 4-8 Stunden gut zu lösen ist und ein maximaler zeitlicher Einsatz wird nicht bewertet weder negativ noch positiv
  • Bitte lege eine Beschreibung in as Repository wie die Applikation zu starten und zu nutzen ist
    (für technisch versierte)
Was musst du NICHT machen
  • Authentifizierung / Autorisierung
  • Ausführliche Dokumentation
  • Dir ein Bein ausreissen wenn es nicht klapp ➝ Lieber mit uns sprechen
Hinweise
  • Nutze Technologien die dir liegen und in denen du dich wohlfühlst
  • Achte auf Clean Code und vernünftigen Code-Style nutze ggfs. quality checker
  • Wenn du Code/Snippets von Dritten verwendest, dann mach das bitte kenntlich
  • Struktur, Vorgehen und Lösungsidee ist uns wichtiger als working code
  • Bereite dich darauf vor dein Vorgehen zu erläutern
  • Die Aufgabe ist bewusst nur grob spezifiziert. Überrasche uns mit Ideen wie du es verstehst.