Internship Guide
2 Firmeninterne Abläufe
2.1 Werte
2.1.1 Werte der Renuo AG
verstehen und verwenden die Begriffe "Qualität und Präzision", "Verantwortung", "Fairness und Transparenz", "Neue Wege" und "Zusammen"
Anzeigen
2.1.2 Clean Code
kennen die Regeln des "Clean Codes" von Robert C. Martin und können nach deren Prinzipien programmieren
Anzeigen
2.1.3 Clean Coder
2.1.4 Lightning Talks
halten mindestens einen Lightning Talk zu einem in ihrem Interessengebiet liegenden und aktuellen Thema
Anzeigen
2.1.5 Open Source
erstellen mindestens einen Pull-Request für ein Open Source Projekt, das nicht von Renuo kontrolliert wird
Anzeigen
2.2 Firmenspezifische Strukturen, Aktivitäten und Prozesse
2.2.1 Aufbau der Renuo AG
2.2.2 Working Groups
2.2.3 General Meeting
2.2.4 Kundenkontakt
2.2.5 Administration
3 Renuo Workflow
3.1 Tickets verwalten
kennen die verschiedenen Stadien eines Kunden-Tickets aufgrund des Redmine Workflow der Renuo AG
Anzeigen
3.2 Entwickler-Prozesse
4 Projektmanagement
4.1 Scrum
4.2 Kanban
5 Programmiersprachen und Frameworks
5.1 Ruby on Rails
5.1.1 Ruby
5.1.2 Guidelines
5.1.3 MVC
5.2 Flutter
5.3 JavaScript
können Loops, Conditionals, Functions, Arrays, Objects, Closures und Prototypes mit JavaScript implementieren
Anzeigen
5.3.1 jQuery
5.3.2 Ajax
5.3.3 JSON
5.3.4 TypeScript
5.3.5 Node
5.3.6 Stimulus
5.3.7 Frameworks
5.3.8 Bundlers
6 Testen
6.1 Test-driven development (TDD)
sind in der Lage, Software-Tests vor den kleineren, zu testenden Komponenten zu erstellen
Anzeigen
6.4 Testarten
können verschiedene Testarten benennen und wissen, wann diese zum Einsatz kommen (Test-Pyramide)
Anzeigen
können die Component-, Integration-, System- und Exploratory- Tests beschreiben und erklären, wann diese zum Einsatz kommen
Anzeigen
6.4.1 Unit-Tests
6.4.2 Component-Tests
6.4.3 Integration-Tests
6.4.4 System-Tests
6.4.5 Acceptance-Tests
6.4.6 Smoke-Tests
können Smoke-Tests unter Beachtung verschiedener Betriebssysteme und Browser (sowohl diverse Web-, als auch mobile Browser) durchführen
Anzeigen
6.5 Linting
6.6 Testabdeckung
7 Deployment und Betrieb
8 User Interfaces (UI)
8.1 HTML
können erklären, wieso die ersten beiden Buchstaben im Akronym HTML für "Hypertext" stehen
Anzeigen
8.1.2 Aufbau
8.1.3 HTML-Tags
8.1.4 Unicode und Zeichenkodierung
wissen, dass eine Zeichencodierung eine eindeutige Zuordnung von Schriftzeichen und Symbolen innerhalb eines Zeichensatzes erlaubt
Anzeigen
8.2 CSS
8.2.2 Guides
8.2.3 Selektoren
8.2.4 SCSS
kennen weitere Skriptsprachen für CSS, wie beispielsweise LESS, und können Unterschiede benennen
Anzeigen
8.2.7 CSS-Frameworks
8.4 User Interface (UI) Techniken
wissen, wie sie Inhalte einer Website mit Tiefen, Farben und Kontrasten hierarchisch anordnen können
Anzeigen
9 Netzwerkprotokolle
9.1 IP / TCP / UDP
Die Praktikanten und Praktikantinnen wissen, welche Rollen die Protokolle IP, TCP und UDP im Netzwerk-Stack spielen.
9.2 HTTP / HTTPS
9.2.1 HTTP
9.3 SSH
9.4 DNS
10 Tools
10.1 Redmine
10.2 Git und Github
10.3 Google Suite
10.4 RubyMine
10.5 Chrome DevTools
10.6 Postman
10.7 Deploio
10.8 Semaphore
10.9 Sentry
10.10 Newrelic
10.11 AWS
10.12 Cloudflare
10.14 Unix Tools
11 Security
11.1 OWASP
11.3 Passwort
11.5 OAuth
erkennen wichtige OAuth-Provider wie Facebook, Google, Microsoft und GitHub als eventuelles Identifikationsmittel bei eigenen Applikationen
Anzeigen
11.6 CORS und CSP
12 Shortcuts
13 Datenbanken
14 Scalability und Performance
berücksichtigen die Skalierbarkeit und Performance bei der Implementierung eines Features
Anzeigen
14.1 Scalability
wissen, was mit dem Begriff Scalability gemeint ist und legen bei der Umsetzung eines Features ein Augenmerk darauf
Anzeigen
14.2 Performance
15 Überfachliche Kompetenzen
15.1 Personale Kompetenzen
15.2 Soziale Kompetenzen
können sich aktiv an der Zusammenarbeit mit anderen Mitarbeiterinnen und Mitarbeitern beteiligen
Anzeigen
17 Praktikantenprojekt (Kundenprojekt)
18 IPA
19 SwissSkills
20 Zusätzliches Material
20.1 Generell
20.3 Bücher
20.4 Ruby/Rails
20.5 Shell, SSH
20.6 Functional Programming
Die Themen "Pure Functions", "Currying", "Function Composition", "Immutability" und "Side Effects" im Buch Composing Software lesen
Anzeigen
Sich Gedanken über die JS-Funktionen .map/.forEach/.reduce/.filter… etc machen und in einem Projekt im Sinne des funktionalen Programmieren anwenden
Anzeigen