[JAVA] Überlegen Sie, was Sie mit der Ausbildung von SIer für junge Entwicklungsingenieure tun sollen (Teil 3).

Es ist der 16. Tag von Stylez Adventskalender 2018.

Ich bin Kajiwara, der Vertreter von Styles Co., Ltd..

Fortsetzung von vorher, Nachdenken über die Ausbildung junger Mitarbeiter (Entwicklungsingenieure von neuen Absolventen bis zum Ende ihrer 20er Jahre) bei SIer (Vertragssystem) Schreibt.

SIer (Vertragssystem) entwickelt im Gegensatz zu einem Dienstleistungsunternehmen ein von einem Kunden bestelltes System. Da das gesamte Unternehmen verschiedene Systeme herstellt, besteht eine hohe Wahrscheinlichkeit, dass es aufgrund von Personalveränderungen für Systeme mit völlig unterschiedlichen Inhalten verantwortlich ist.

Zum Beispiel sieht es so aus.

Soziale Websites ↓ Gachi Inhouse Business System + Buchhaltung System Zusammenarbeit ↓ Hochgeladene Webmedien-Site ↓ Datenanalyse-Batch-System

Wir werden alle zwei Jahre so verschiedene Systeme entwickeln. Die Infrastruktur ist auch ein Trend der anerkannten Migration zu AWS und der Cloud. Daher werden wir On-Preserver (VMware) für AWS und sogar teilweise serverlose Technologie verwenden und Containertechnologie wie Docker und Kubernetes benötigen. Es kommt. Außerdem mache AI. .. .. .. .. Ich fühle, dass es unmöglich ist.

Gegenwärtig haben Menschen um das 40. Lebensjahr den Fortschritt von Websystemen (CGI => Java-Applet => J2EE => Spring usw.) erlebt, weil der Client-Server veraltet ist, aber jetzt sind junge Leute parallel. Ich habe das Gefühl, plötzlich vor die sich schnell entwickelnde Technologie geworfen zu werden. Was sollen wir in einer solchen Situation für die Ingenieurausbildung tun?

"Überlegen, was für junge Entwicklungsingenieure von SIer (1) zu tun ist" Im Unternehmen (Styles Co., Ltd.) machen wir das tatsächlich. Ich schrieb über den Bildungskurs, den ich vom neuen Absolventen bis zum Ende des zweiten Jahres mache.

Das ist wirklich minimale Bildung

Ich konnte es nur insoweit tun, als ich das Anfängerlevel abschließen konnte.

Was soll ich danach tun, um mein Wachstum zu unterstützen, damit ich nicht alleine aufwachse?

Als allererstes

Ich werde schnell eine Skill Map schreiben, um zu zielen.

image.png

Es tut mir leid für den Inhalt, der zu knusprig war. Nun, es ist schwer, in diese Straße zu gehen, aber ich denke, es ist okay, wenn ich das Anfang der 30er Jahre bekomme. Oben ist die Zwischenstufe Stufe 2 und die fortgeschrittene Stufe Stufe 3.

Ich habe über Level 1 geschrieben zweimal zuvor, also werde ich dieses Mal tiefer in Level 2 eintauchen.

1. Programmierstufe (Muttersprache) 2

1.1 Arbeiten am Refactoring

Sie müssen zuerst das Refactoring kennen und es sich dann zur Gewohnheit machen. Dazu muss ich das folgende "Refactoring - Bestehenden Code sicher verbessern" als Lesesitzung lesen, aber mit einem Mentor-ähnlichen Senior besprechen, wie man es sich zur Gewohnheit macht. Ich muss gehen. Dazu müssen Sie regelmäßig eine "Codeüberprüfung" durchführen.

[Neuauflage Refactoring - Vorhandenen Code sicher verbessern-](http://www.amazon.co.jp/%E3%83%AA%E3%83%95%E3%82%A1%E3%82 % AF% E3% 82% BF% E3% 83% AA% E3% 83% B3% E3% 82% B0% E2% 80% 95% E6% 97% A2% E5% AD% 98% E3% 81% AE % E3% 82% B3% E3% 83% BC% E3% 83% 89% E3% 82% 92% E5% AE% 89% E5% 85% A8% E3% 81% AB% E6% 94% B9% E5 % 96% 84% E3% 81% 99% E3% 82% 8B% E2% 80% 95-OBJEKT-TECHNOLOGIE-Martin-Fowler / dp / 427405019X / ref = sr_1_2? S = Bücher & dh = UTF8 & qid = 1458616485 & sr = 1-2 & Schlüsselwörter =% E3% 83% AA% E3% 83% 95% E3% 82% A1% E3% 82% AF% E3% 82% BF% E3% 83% AA% E3% 83% B3% E3% 82% B0 +% E3% 83% 97% E3% 83% AD% E3% 82% B0% E3% 83% A9% E3% 83% A0% E3% 81% AE% E4% BD% 93% E8% B3% AA% E6% 94% B9% E5% 96% 84% E3% 83% 86% E3% 82% AF% E3% 83% 8B% E3% 83% 83% E3% 82% AF)

--Refactoring-Erstes Beispiel --Refactoring-Prinzipien

1.2 An gutem Code arbeiten

Lesbarer Code - einfache und praktische Techniken zum Schreiben von besserem Code

Wurde bereits im zweiten Jahr als Leseparty aufgerufen, dies erfordert jedoch auch eine Codeüberprüfung als bewährte Methode.

1.3 Tieferes Verständnis des Rahmens

Dies ist bei der internen Ausbildung ziemlich schwierig. Nehmen Sie regelmäßig an Studiensitzungen von JAPAN SAP USERS'GROUP (JSUG) und PHP Study Group teil. Und ich denke, es ist am besten, die Geschichte unserer Vorgänger zum Laufen zu bringen.

2. Frontend-Ebene 2

2.1 Grundlegende Implementierung in einem bestimmten JavaScript-Framework

Styles befasst sich hauptsächlich mit Angular, aber ich denke, dass die Verwendung von Angular für die Entwicklung eines Geschäftssystems als SPA (Single Page Application) wie folgt angemessen ist. --Voller Stapel --Verwenden Sie mit Typescript

Selbst mit einem kleinen System bin ich ein wenig verwirrt, ob es in Ordnung ist, also denke ich, dass es reagiert oder Vue. Auf jeden Fall ist es bedeutungslos, es sei denn, es wird tatsächlich in einem Projekt verwendet (dh tatsächliche Arbeit). Daher denke ich, dass es am wichtigsten ist, Projekte, die das JavaScript-Framework ernsthaft verwenden, nacheinander zuzuweisen.

3. Infrastrukturstufe 2

3.1 Bequeme tägliche Verwendung von Shell-Skripten

Ob AWS oder On-Premise - die Grundlagen des Shell-Scripting sind sehr wichtig für die Automatisierung alltäglicher Dinge. Organisieren Sie jeden Tag das gleiche Protokoll und senden Sie die Ergebnisse per Slack oder E-Mail an die Betroffenen. Es wäre ein großer Unterschied, wenn ich den Zeitplan jeden Tag überprüfen und manuell 30 Minuten dauern könnte, aber er würde automatisch in 1 Minute abgeschlossen sein.

Ah, es ist wichtig, gleichzeitig die grundlegenden Techniken der regulären Ausdrücke zu lernen.

[Praktische Technik der Shell-Programmierung](https://www.amazon.co.jp/%E3%82%B7%E3%82%A7%E3%83%AB%E3%83%97%E3%83%AD% E3% 82% B0% E3% 83% A9% E3% 83% 9F% E3% 83% B3% E3% 82% B0% E5% AE% 9F% E7% 94% A8% E3% 83% 86% E3% 82% AF% E3% 83% 8B% E3% 83% 83% E3% 82% AF-Software-Design-plus-% E4% B8% 8A% E7% 94% B0 / dp / 47774173444

--Kapitel 1 Vorbereitende Bewegung --Kapitel 2 Suchen und Verarbeiten von unregelmäßigen Sätzen und Festlegen von Dateien --Kapitel 3 Dateiverwaltung und Systembetrieb --Kapitel 4 Das Dateisystem zu einer Datenbank machen --Kapitel 5 Verarbeitung großer Datenmengen --Kapitel 6 Behandelt Bilder, Tabellenberechnungssoftware und andere spezielle Daten --Kapitel 7 Interaktion mit dem CLI-ähnlichen Internet --Kapitel 8 Berechnung

[Schreibübung für reguläre Ausdrücke mit iterativer Lernsoftware](http://www.amazon.co.jp/%E5%8F%8D%E5%BE%A9%E5%AD%A6%E7%BF%92%E3% 82% BD% E3% 83% 95% E3% 83% 88% E4% BB% 98% E3% 81% 8D-% E6% AD% A3% E8% A6% 8F% E8% A1% A8% E7% 8F % BE% E6% 9B% B8% E3% 81% 8D% E6% 96% B9% E3% 83% 89% E3% 83% AA% E3% 83% AB-WEB-PRESSE-plus / dp / 4774145092 / ref = sr_1_2? s = Bücher & dh = UTF8 & qid = 1458600709 & sr = 1-2 & Schlüsselwörter =% E6% AD% A3% E8% A6% 8F% E8% A1% A8% E7% 8F% BE)

--Kapitel 1 Vorgehensweise beim Lernen und Schwingen von Software --Kapitel 2 Grundlagen regulärer Ausdrücke Was sind reguläre Ausdrücke? --Kapitel 3 Grundlegendes Metazeichen --Kapitel 4 Teile in Kombination verwenden --Kapitel 5 Praktische Funktionen regulärer Ausdrücke --Kapitel 6 Praktischere reguläre Ausdrücke

3.2 Praktische Verwendung von Docker

Ich denke, die Zielkompetenz besteht darin, die gewünschte Entwicklungsumgebung mit Docker erstellen zu können.

Die Geschichte, die das Erstellen einer Entwicklungsumgebung mit Docker zehnmal einfacher gemacht hat Ich denke, dass Sie selbst damit umgehen können, während Sie es verstehen.

Abhängig von der Geschwindigkeit der Verbreitung der Containertechnologie in der Zukunft besteht jedoch die Möglichkeit, dass sie in der Realität überholt wird.

5. RDBMS Level 2

Grundlegendes zur SQL-Leistung

Komplexes SQL schreiben

Ich möchte, dass Sie in der Lage sind, kompliziertes SQL richtig zu schreiben. Geht es um das Folgende als angenommenes Niveau?

[SQL-Einführungsübung mit 215 Fragen klar verstehen!](Http://www.amazon.co.jp/%E3%82%B9%E3%83%83%E3%82%AD%E3%83%AA%E3 % 82% 8F% E3% 81% 8B% E3% 82% 8B-SQL-% E5% 85% A5% E9% 96% 80-% E3% 83% 89% E3% 83% AA% E3% 83% AB215 % E5% 95% 8F% E4% BB% 98% E3% 81% 8D-% E3% 82% B9% E3% 83% 83% E3% 82% AD% E3% 83% AA% E3% 82% B7% E3% 83% AA% E3% 83% BC% E3% 82% BA / dp / 4844333933 / ref = pd_cp_14_3? Ie = UTF8 & refRID = 1T98M4P3G7BCN5V0W78X)

--Kapitel 1 Erste SQL --Kapitel 2 Grundlegende Grammatik und 4 Hauptanweisungen --Kapitel 3 Eingrenzen der zu betreibenden Leitungen --Kapitel 4 Verarbeitung von Suchergebnissen --Kapitel 5 Ausdrücke und Funktionen --Kapitel 6 Aggregation und Gruppierung --Kapitel 7 Unteranfragen --Kapitel 8 Zusammenfügen mehrerer Tabellen --Kapitel 9 Transaktionen --Kapitel 10 Erstellen einer Tabelle --Kapitel 11 Verschiedene Unterstützungsfunktionen --Kapitel 12 Tischgestaltung

In Bezug auf die SQL-Leistung wird davon ausgegangen, dass jedes DBMS SQL schreiben kann, während ein "Ausführungsplan" angenommen wird.

[Einführung in die SQL-Praxis ── Schreiben einer schnellen und leicht verständlichen Abfrage (WEB + DB PRESS plus)](http://www.amazon.co.jp/SQL%E5%AE%9F%E8%B7%B5%E5%85 % A5% E9% 96% 80% E2% 94% 80% E2% 94% 80% E9% AB% 98% E9% 80% 9F% E3% 81% A7% E3% 82% 8F% E3% 81% 8B % E3% 82% 8A% E3% 82% 84% E3% 81% 99% E3% 81% 84% E3% 82% AF% E3% 82% A8% E3% 83% AA% E3% 81% AE% E6 % 9B% B8% E3% 81% 8D% E6% 96% B9-WEB-DB-PRESSE-plus / dp / 4774173010 / ref = asap_bc? Dh = UTF8)

--Kapitel 1: DBMS-Architektur ──Ist es auf dieser Welt nur Lebensmittel? --Kapitel 2: Grundlagen von SQL ── Wie das Sprechen Ihrer Muttersprache --Kapitel 3: Bedingte Verzweigung in SQL ── Von Anweisung zu Ausdruck --Kapitel 4: Aggregation und Schnitt ── Die Welt der Aggregation --Kapitel 5: Schleife ── Verfahrensfluch --Kapitel 6: Joins ── Diejenigen, die Joins steuern, steuern SQL --Kapitel 7: Unterabfragen ── Sollten Schwierigkeiten geteilt werden? --Kapitel 8: Reihenfolge in SQL ── Wiederbelebung des Prozedurtyps --Kapitel 9: Updates und Datenmodelle ── Blinder Supersoldat ――Kapitel 10: Beherrschung des Index ── Schwächen talentierter Menschen

6. Allgemeine Architekturfähigkeitsstufe 2

Insbesondere möchte ich, dass Sie das grundlegende Know-how bezüglich der Skalierung des Systems erlernen. Ich möchte beispielsweise, dass Sie Elasticsearch und ElasticCache unter AWS erstellen und verwenden können. Außerdem ist es erforderlich, die Serverlast zu messen, um festzustellen, wo der Engpass liegt, und Wissen zu erwerben, um ihn zu beseitigen.

7. Grundlagen des Datenbankdesigns

Das Datenbankdesign (derzeit RDBMS) ist sehr schwer zu erlernen. Es gibt nicht viele gute Bücher, und ich glaube nicht, dass es viele Senioren gibt, die ihre eigenen Kenntnisse über Datenbankdesign haben.

--Kapitel 1 Diejenigen, die die Datenbank steuern, steuern das System --Kapitel 2 Logisches und physikalisches Design --Kapitel 3 Logisches Design und Normalisierung - Warum müssen Tabellen aufgeteilt werden? --Kapitel 4 ER-Diagramm - Darstellung der Beziehung zwischen mehreren Tabellen --Kapitel 5 Logisches Design und Leistungsnachteile und Denormalisierung der Normalisierung --Kapitel 6 Datenbank und Leistung --Kapitel 7 Schlechtes Know-how für logisches Design --Kapitel 8 Graues Know-how für logisches Design --Kapitel 9 Erweiterte Baumstrukturen für die logische Entwurfsbehandlung mit SQL

Vorerst habe ich es mit dem Image von bis zu Level 2 geschrieben (ca. 3-5 Jahre nach dem Eintritt in das Unternehmen).

Von diesen möchte ich über Level 3 schreiben (ungefähr 6-8 Jahre nach dem Eintritt in das Unternehmen).

Recommended Posts

Überlegen Sie, was Sie mit der Ausbildung von SIer für junge Entwicklungsingenieure tun sollen (Teil 1).
Überlegen Sie, was Sie mit der Ausbildung von SIer für junge Entwicklungsingenieure tun sollen (Teil 3).
Überlegen Sie, was Sie mit der Ausbildung von SIer für junge Entwicklungsingenieure tun sollen (Teil 2).
[Ausgabe] Lernen Sie Ruby von dem, was Sie mit der schnellsten Geschwindigkeit tun möchten ・ Teil 1 "Überlegen Sie, was Sie machen möchten"
Was Java-Ingenieure benötigen, um sich auf die Java 11-Version vorzubereiten
[Für Anfänger] Ruby soll Rubin sein, aber was ist damit?