131 lines
2.4 KiB
Markdown
131 lines
2.4 KiB
Markdown
# Konstantin Hintermayer
|
|
|
|
## Rolle im Projekt
|
|
|
|
::: columns
|
|
|
|
:::: column
|
|
**Aufgabenbereiche**:
|
|
|
|
- Product Owner
|
|
- Kundenschnittstelle
|
|
- Infrastruktur & CI/CD
|
|
|
|
**Softwareentwicklung:**
|
|
|
|
- Event Registration
|
|
- Black Board
|
|
- Report System
|
|
- Mass Mailer
|
|
|
|
::::
|
|
|
|
:::: column
|
|
|
|
\begin{tikzpicture}
|
|
\clip (0,0) circle (3em);
|
|
\node at (0,0) {\includegraphics[width=6em]{./Images/images/konstantin/profile.jpg}};
|
|
\draw[accent, line width=3pt] (0,0) circle (3em);
|
|
\end{tikzpicture}
|
|
|
|
::::
|
|
|
|
:::
|
|
|
|
## Infrastruktur
|
|
|
|
::: columns
|
|
:::: column
|
|
|
|
**Entwicklung:**
|
|
|
|
- **Gitea:** Versionskontrollsystem
|
|
- **Wireguard:** VPN
|
|
- **Docker:** Containerisierung
|
|
- **GitHub:** Transfer
|
|
- **Gitea Actions:** CI/CD
|
|
|
|
::::
|
|
:::: column
|
|
|
|
**Produktion:**
|
|
|
|
- **Debian:** Betriebssystem
|
|
- **NginX:** Reverse Proxy
|
|
- **PostgreSQL:** Datenbank
|
|
- **Oqtane:** CMS
|
|
|
|
::::
|
|
:::
|
|
|
|
\vfill
|
|
|
|
\begin{center}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/debian.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/docker.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/gitea.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/wireguard.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/github.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/nginx.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/postgres.pdf} \hspace{1em}
|
|
\includegraphics[width=2.5em]{./Images/images/konstantin/logos/oqtane.pdf}
|
|
\end{center}
|
|
|
|
\vfill
|
|
<!-- { width=100% } -->
|
|
|
|
---
|
|
|
|
**Produktions-Infrastruktur:**
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant browser as Client
|
|
participant nginx as NginX
|
|
participant oqtane as Oqtane
|
|
participant db as PostgreSQL
|
|
|
|
browser->>+nginx: HTTPS => 0.0.0.0:443
|
|
nginx->>nginx: SSL Terminierung
|
|
nginx->>+oqtane: HTTP => 127.0.0.1:5000
|
|
oqtane->>+db: SQL => 127.0.0.1:5432
|
|
db-->>-oqtane: SQL
|
|
oqtane-->>-nginx: HTTP
|
|
nginx-->>-browser: HTTPS
|
|
```
|
|
|
|
|
|
## Softwarearchitektur
|
|
|
|
- Open-Closed Principle
|
|
- Strategy Pattern
|
|
- Dependency Injection
|
|
|
|
## Technischer Vergleich
|
|
|
|
Bisherige Erfahrungen:
|
|
|
|
- Go
|
|
- Typescript
|
|
- GRPC (interprozess Kommunikation)
|
|
|
|
Untersuchungsgebiete:
|
|
|
|
- Typisierung
|
|
- Konsistenz
|
|
|
|
## Teamleitung
|
|
|
|
::: columns
|
|
|
|
:::: column
|
|
left
|
|
::::
|
|
|
|
:::: column
|
|
right
|
|
::::
|
|
|
|
:::
|
|
|
|
## Fazit |