Ich möchte wissen, wie wichtig Java-Zertifizierungen (SCJP, SCWCD und andere) für eine Architektenposition sind. Wenn jemand eine gute Erfahrung in der Java-Entwicklung hat und seine Karriere auf Architektenebene fortsetzen möchte, glaubt ihr, dass er eine Zertifizierung in seinem Lebenslauf haben muss? Hat er noch nie an leitenden Entwicklerfunktionen gearbeitet?
Wenn Sie mein Interview für eine Architektenstelle führen. Und ich habe als Java-Webentwickler in verschiedenen Teams mit 5 Jahren Erfahrung gearbeitet. Führe niemals welche an. Und ich habe Zertifizierungsabzeichen in meinem Lebenslauf.
Wie kann ein Entwickler seinen Karriereweg zum Architekten im Team beschreiten?
java
architecture
Tahir Akram
quelle
quelle
Antworten:
Die Ironie der Zertifizierungen im Java-Bereich ist, dass es tatsächlich die niedrigsten Levels sind, die ich für die nützlichsten halte.
Ich habe zum Beispiel den alten Sun Certified Java Programmer (den niedrigsten, den Sie haben können). Es bringt Ihnen zwar nichts bei, was ein anständiger Programmierer durch einige Wochen dauernde Java-Tutorials nicht lernen konnte, wirkt jedoch als einfacher Filter. Um dies zu bestehen, müssen Sie lediglich grundlegende Java-Kenntnisse haben - in diesem Sinne ist es wahrscheinlich ein nützlicher Filter für Junior-Rollen, bei denen Sie einen direkten Java-Programmierer suchen. Wenn sie es haben, bedeutet dies, dass sie grundlegendes Java kennen.
Ich habe noch nie höhere Zertifizierungen als diese durchgeführt - aber um ehrlich zu sein, habe ich aus Erfahrung heraus festgestellt, dass die meisten Architekten dort ankommen, indem sie Senioren und Teamleiter werden und im Unternehmen nur befördert werden, indem sie gut in dem sind, was sie tun. Ich kann mir keine der Java-Firmen vorstellen, bei denen ich jemanden für eine Architektenrolle abseits der Straße eingestellt habe. Es sind im Wesentlichen interne leitende Entwickler und Teamleiter, die schließlich eine Architekturrolle bekamen.
In jedem Fall denke ich, dass es wichtig ist, eine Eignung für Systemarchitektur und -design auf hohem Niveau zu zeigen, indem große Aufgaben übernommen werden, die diese Fähigkeiten ausüben. In gewisser Weise wird es wahrscheinlich darum gehen, zuerst ein untergeordneter Teamleiter zu sein. Die nachgewiesene Erfahrung als Teamleiter und "architekturähnliche" Systemdesigner auf hohem Niveau ist viel länger als jede Zertifizierung auf diesem Niveau.
Hinweis : Ich bin selbst kein Architekt (oder sogar ein Teamleiter), aber das habe ich seit über 10 Jahren in verschiedenen Unternehmen beobachtet. Die Menschen, die am Ende Architekten sind, wissen, wie man große Aufgaben übernimmt, Teams leitet und Dinge erledigt. Und ich kenne niemanden, der überhaupt Java-Zertifizierungen hatte.
quelle
Wenn ich Leute interviewe, ignoriere ich normalerweise ihre Zertifizierungen. Nach meiner Erfahrung sind Zertifizierungen kein gutes Barometer für verwertbares Wissen. Meine Fragen während des Interviews lassen mich normalerweise wissen, ob die Person die benötigten Informationen kennt UND sie auf reale Probleme anwenden kann.
quelle
Zu Beginn meiner Karriere habe ich meinen SCJP studiert und erreicht, und ich würde es wieder tun, nur weil das Ziel der Zertifizierung für mich die Motivation war, die komplizierten Details von Java zu studieren und zu lernen. Die Zertifizierung selbst hat jedoch nichts für meine Karriere getan.
In den USA spielen sie in der Regel keine große Rolle, aber in Ländern wie Indien, in denen es viele wirklich qualifizierte Bewerber und einen höheren Wettbewerb um Spitzenjobs wie den von Software Architect gibt, können sie dazu verwendet werden, bestimmte Kandidaten auszusondern.
Ich denke, dass Zertifizierungen sich letztendlich lohnen, auch wenn sie nur geringfügig von Vorteil sind, aber mit Sicherheit sind sie um ein Vielfaches wichtiger als echte Talente und Fähigkeiten.
Ihre Frage betrifft mich, aber ich glaube nicht, dass Sie für eine SA-Rolle bereit sind. Ein guter Softwarearchitekt IMHO muss einen vielfältigen Hintergrund in einer Vielzahl unterschiedlicher Technologien haben. Er / Sie muss mindestens ein hohes Verständnis für ein Framework oder eine Sprache haben und in der Lage sein, Legacy-Systeme kritisch auf Stärken und Schwächen im Design zu bewerten. Angesichts einer Reihe von Einschränkungen muss ein guter Softwarearchitekt auch in der Lage sein, verschiedene mögliche Lösungen zu ermitteln und die Vor- und Nachteile der einzelnen Lösungen abzuwägen.
Wenn Sie ein Manager auf hoher Ebene fragt, warum Sie Java anstelle von Ruby auswählen, was sagen Sie dazu? Was ist mit den Vorteilen von PHP gegenüber C #? Können Sie ein anämisches Datenmodell definieren? Was sind die Vorteile des Java EE-Ansatzes gegenüber dem Spring Framework AOP-Ansatz oder umgekehrt?
Diese Art von Fragen sollte ein Architekt beantworten können. Wenn Sie nachforschen müssen, sind Sie möglicherweise nicht in der Lage, diese zu beantworten.
quelle
SCJP ist ein sehr einfaches Zertifikat. Sie sollten dies auf jeden Fall bekommen, dann SCJD. (Beachten Sie, dass diese Dinge jetzt neue Namen haben.) SCWCD ist auch einfach. Mach etwas Beeindruckenderes.
http://en.wikipedia.org/wiki/Sun_Certified_Professional
In Bezug auf Ihre berufliche Verantwortung sollten Sie wahrscheinlich Projektleitungsarbeit leisten, bevor Sie sich für eine Architekturposition entscheiden.
quelle
Ja. Meiner Meinung nach ist das Hauptergebnis der Zertifizierung ein Überblick. Sie kennen die Technologie (beachten Sie, dass Sie nicht wissen, wie man die Technologie einsetzt - das erfordert Übung). Für den Architekten kann es sehr nützlich sein, einen soliden Überblick über die in seinem Fachgebiet verwendete Technologie zu haben, aber in der Java-Welt müssen Zertifizierungen nicht ausreichen - Sie sollten auch einige der wichtigsten Anwendungsserver und Frameworks kennen.
Ich habe viele MS-Zertifizierungen bestanden und bin nur aufgrund der Vorbereitung auf diese Zertifizierungen mit Teilen der API vertraut geworden, die ich zuvor noch nie benötigt hatte (und manchmal wusste ich überhaupt nichts darüber). Später konnte ich diese Teile der API als gebrauchsfertige Lösung für einige Probleme vorschlagen. Das ist der Grund, warum ich weiterhin Zertifizierungen nehme. Die Zertifizierung selbst bedeutet beim Vorstellungsgespräch nichts, bis Sie nachweisen, dass Sie die entsprechenden Kenntnisse haben.
Die Zertifizierung selbst bedeutet nichts. Sie müssen andere Fähigkeiten haben, um ein "Architekt" zu werden. Das Programmieren allein reicht nicht aus, um Architekt zu werden - Sie müssen Entscheidungen treffen, Verantwortung übernehmen, eine Komponente oder eine ganze Anwendung entwerfen und die Arbeit für andere vorbereiten (manchmal sogar leiten) können. Sie müssen gute Kommunikationsfähigkeiten haben.
Zumindest erwarte ich das vom Architekten. Aber was / wer ist ein Architekt? Für mich ist es gerade über gebrauchtes Schlagwort. Mehr als die Hälfte der Architekten, die ich jemals getroffen habe, waren gerade zur richtigen Zeit (oder lange genug) am richtigen Ort, um befördert zu werden. Architekt zu sein bedeutet nicht, dass Sie gut oder besser sind als andere, und selbst wenn Sie es sind, befinden Sie sich immer noch auf dem gleichen Karrierelevel wie diese, die es nicht sind. Wenn ich jemanden treffe, der sich Architekt nennt, bin ich immer sehr misstrauisch.
quelle
Fazit: Sie müssen die Kodierung im Kontext von NFRs verstehen und wissen, wie sie ein Geschäftsproblem lösen / einen strategischen Vorteil schaffen. Beachten Sie, dass ich nichts darüber gesagt habe, dass man gut programmieren kann (obwohl dies normalerweise erwartet wird. Dies schließt die meisten anderen Kommentare ein, erweitert diese jedoch weiter. Gibt Ihnen die Auswahl von Spring ein geringeres Gewicht, eine schnellere Anwendung bei gleichzeitiger Beeinträchtigung der Modifizierbarkeit? Welche geschäftlichen Auswirkungen hat diese Attributentscheidung? Stellt dies eine Herausforderung für das Konfigurationsmanagement und die Wartbarkeit Ihres neu gebildeten DevOps-Teams dar? Ist ein privates SaaS-Bereitstellungsmodell sinnvoll?
Wenn Sie also glauben, dass Sie Zertifikate benötigen, korrigieren Sie dies wahrscheinlich. Was Sie jedoch über die sprachspezifische SCJP-Ebene hinaus benötigen, ist weniger klar. Es empfiehlt sich, ITIL, PMI-ACP, CSSLP, TOGAF9, ArchiMate 2, das SEI Software Architecture Professional-Zertifikat und das ATAM-Evaluierungszertifikat zu erkunden. Dies bereitet Sie viel mehr darauf vor, Architekt zu werden als SCWCD. Der Erwerb eines SCEA (jetzt OCM Java Architect) könnte dennoch eine fruchtbare Übung sein, um Sie speziell auf die Java-Welt vorzubereiten und auch mit Board-Reviews umzugehen. Ansonsten würde ich mich auf die erwähnten konzentrieren.
quelle
Das internationale Software Architecture Qualification Board bietet ein hersteller- und technologieneutrales Curriculum (es werden keine Kurse oder Kurse verkauft!) Mit Schwerpunkt auf methodischem und konzeptionellem Know-how.
Könnte imho jede technologiezentrierte Zertifizierung ergänzen.
quelle
Sie werden wahrscheinlich helfen, da dies auf einige technische Fähigkeiten und Ausdauer hinweist.
Aber eigentlich sollte es nicht; Architektur programmiert nicht.
Ich gehe davon aus, dass es sich hier um eine Rolle als "Solution Architect" handelt. Die Rolle des Lösungsarchitekten ist recht komplex und umfasst viele Dinge.
Ein winziger Teil der Rolle befasst sich mit Programmier- und Entwicklungsumgebungen. In der Praxis wird der größte Teil Ihrer Zeit für das Ausfüllen von Boiler-Plate-Dokumenten oder für die Teilnahme an endlosen Besprechungen aufgewendet, bei denen Ihr einziger Beitrag darin besteht, idiotische Vorschläge zu vetieren und sicherzustellen, dass noch Restbestände vorhanden sind Vernunft in den daraus resultierenden Vereinbarungen.
quelle
Zumindest in der Unternehmenswelt hat eine Person mit Zertifizierung immer den Vorteil gegenüber der Person, die dies nicht tut, nicht unbedingt in Bezug auf Kenntnisse / Fähigkeiten, aber sie zeigt, wie die Unternehmen sagen, dass sie Initiative zeigt.
quelle