Frage:
Wie können Sie Interviewer davon überzeugen, dass Sie nach einer langen Pause nicht vergessen haben, wie Sie Ihren Job machen sollen?
IAmBob
2018-05-31 08:36:27 UTC
view on stackexchange narkive permalink

Ich habe eine Ausbildung und Berufserfahrung in der IT, insbesondere in der Webentwicklung. Ich programmiere und schreibe seit 15 Jahren Markup. Ich habe professionell als Webentwickler gearbeitet und diese Fähigkeiten in meinem Privatleben eingesetzt.

Ich habe in den letzten zwei Jahren eine Pause von der IT-Branche eingelegt, weil ich nur eine Pause brauchte. Ich habe vor kurzem versucht, wieder in die Belegschaft einzusteigen.

Ende letzten Jahres fand mich der CEO eines lokalen Unternehmens auf LinkedIn und forderte mich auf, mich zu bewerben. Ich habe mich telefonisch mit dem CEO und dem Chefprogrammierer getroffen. Der Chefprogrammierer ließ es so klingen, als hätte ich keine Chance, weil ich seit dem College keine bestimmte Programmiersprache (C #) verwendet hatte.

Während ich von dieser herablassenden Bemerkung ein wenig beleidigt war, war ich es antwortete nicht und ließ es einfach sein. Aber ich wollte ihn wirklich an seine Stelle setzen. Programmieren ist wie Fahrrad fahren oder Schuhe binden. Es ist nicht etwas, das Sie einfach "vergessen".

Ich habe ausgiebig mit einigen anderen Sprachen mit ähnlicher Syntax gearbeitet (z. B. JavaScript). Jeder gute Programmierer kann sich auf unzählige Ressourcen und Dokumentationen verlassen, wenn er einen Befehl oder eine Methode vergisst. Wenn Sie eine Sprache beherrschen, ist es nicht schwer, eine andere zu lernen.

Ich habe mit einem Personalvermittler über eine andere offene Stelle gesprochen. Er spielte auf die Idee an, dass es seinem Kunden vielleicht nicht gefällt, dass ich seit einiger Zeit nicht mehr professionell mit Webentwicklung gearbeitet habe. Ich lasse das auch zu, aber ich werde mich trotzdem um die Stelle bemühen.

Wie gehe ich mit solchen Arbeitgebern oder Personalvermittlern um? Lohnt es sich, eine solche "Hexenjagd" zu widerlegen?

Kommentare sind nicht für eine ausführliche Diskussion gedacht.Diese Konversation wurde [in den Chat verschoben] (https://chat.stackexchange.com/rooms/78274/discussion-on-question-by-iambob-how-to-convince-interviewers-you-have-not-forgo).
Sechszehn antworten:
Stephan Branczyk
2018-05-31 12:57:34 UTC
view on stackexchange narkive permalink

Wie widerlegen Sie eine solche "Hexenjagd" effektiv?

Es ist keine "Hexenjagd".

Sie müssen es aus ihrer Perspektive sehen.

Sie haben Programmiererfahrung, Sie haben Zugriff auf Google und Stack Overflow und Sie sind wirklich schlau, aber so viele andere auch Jobsuchende. Sie haben auch Programmiererfahrung, Zugriff auf Google und Stack Overflow usw. Mit anderen Worten, Sie müssen sich von diesen anderen Jobjägern unterscheiden.

Und ich fürchte, verbales Judo ist nicht das, worauf Sie sich jetzt konzentrieren sollten.

Wenn Sie einen Job mit C # (anstelle von JavaScript) ausführen möchten, sollten Sie ein kleines Projekt in C # erstellen. Wenn Sie einen Job mit Java möchten, sollten Sie ein Projekt in Java ausführen.

Und obwohl ja, könnte jemand Sie beauftragen, eine völlig andere Sprache zu verwenden als die, die Sie gewohnt sind, aber das passiert. Wenn Sie Ihre Chancen, einen Job in einem bestimmten Bereich zu finden, wirklich erhöhen möchten, müssen Sie bereit sein zu beweisen, dass Sie bereit und in der Lage sind, ein neues Projekt anzunehmen und dies in der jeweiligen Sprache zu tun (was Sie nicht sind) völlig vertraut in noch).

Und es gibt keinen besseren Beweis dafür als ein Spielzeugprojekt, an dem Sie gerade gearbeitet haben.

Das Spielzeugprojekt kann dann als Ausgangspunkt für eine Diskussion verwendet werden. Ein Projekt zu haben, über das man sprechen kann, ist eine großartige Möglichkeit, das Gespräch auf etwas zu lenken, das man kennt. Ohne dies kann der Interviewer nur dumme allgemeine Fragen stellen, die er / sie aus dem Internet kopiert hat und die von Natur aus schwer zu beantworten sind.

Kommentare sind nicht für eine ausführliche Diskussion gedacht.Diese Konversation wurde [in den Chat verschoben] (https://chat.stackexchange.com/rooms/78337/discussion-on-answer-by-stephan-branczyk-how-to-convince-interviewers-you-have-n).
Thorbjørn Ravn Andersen
2018-05-31 14:24:54 UTC
view on stackexchange narkive permalink

Sie bewerben sich im Wesentlichen für einen C # -Job und haben ihn nur im College verwendet.

Sie sagen dann, Sie haben mit anderen Sprachen gearbeitet und wissen, wie man programmiert.

Ich bin keine C # -Person, sondern eine Java-Person. Das Java-Ökosystem und die Best Practices sind so groß, dass die Sprache selbst zwar eher klein ist, aber nicht nur am ersten Tag aufgegriffen wird . Selbst mit dem Internet und der Hilfe und allem.

Dies ist wahrscheinlich auch bei C # der Fall, und der leitende Entwickler weiß das , und Sie nicht !

Das ist genau dort eine rote Fahne und auch eine große.

Ich würde mehr Erfahrung mit C # sammeln und einige Beispiele für gut polierte Projekte z Github für die Welt, um zu sehen, ob ich du bin.

+1 für den letzten Satz.* Zeigen *, dass Sie C # bis zu einem gewissen Grad programmieren können und dies aktiv tun.Vielleicht ein kleines Projekt einfallen lassen und es durchschauen.
Ja - es geht nicht um die Syntax, sondern darum, sich im Ökosystem zurechtzufinden - und das dauert Jahre
Genau das habe ich bei der Jobsuche für meinen ersten Programmier-Gig getan.Entwickelte eine mobile Full-Stack-App mit einem .Net-Backend und stellte sie auf GitHub bereit.Es war 100% hilfreich, wenn ich meine Fähigkeiten mit potenziellen Arbeitgebern besprach.
Dies und sogar der SO-Ruf können bei der Bewerbung über die SO-Baustelle hilfreich sein.
Nur um dies zu unterstützen: C # ist eine ** sehr ** sich schnell ändernde Sprache (viel mehr als Java), und das .Net-Ökosystem entwickelt sich ebenfalls schnell.C # von vor ein paar Jahren ist heute nicht C #.Wenn das OP es also "seit dem College" nicht mehr verwendet hat, haben sie wahrscheinlich eine Menge Nachholbedarf - in Bezug auf Syntax, Best Practices, Muster und (wie Sie sagen) das Ökosystem.
+1 C # hat sich drastisch verändert, seit ich das College verlassen habe, und das war vor viel weniger als 15 Jahren.Auto-Eigenschaftsinitialisierer, Primärkonstruktoren, Verzeichnisinitialisierer, Deklarationsausdrücke, Verwendung statischer Elemente, Ausnahmefilter.Und das ist nur C # 6, die aktuelle Version ist C # 7.2.Ich erkenne kaum etwas von dem neueren Code.
Ich wurde an meinem derzeitigen Arbeitsplatz eingestellt und wusste, dass es kein C / C ++ gibt, und es ist ein C / C ++ - Shop.Ich weiß jetzt mehr als der Rest des Teams.Lernen ist wichtig.
@Pharap: Ja, ich habe mich als C # -Experte für Version 3.5 betrachtet und weiß nicht einmal, ob ich eine einzelne Klasse von normalem C # -V5-Code schreiben kann, geschweige denn, was wir jetzt haben (von dem ich keine Ahnung habe).
@MillieSmith C / C ++ ist ein ganz anderes Ballspiel als c #.Es ändert sich definitiv nicht so schnell.
@Stacey C ++ ist wesentlich komplexer als C #.
@T.J.Crowder Die Tatsache, dass sich eine bestimmte Sprache oder ein bestimmtes Ökosystem sehr schnell ändert, war genau das, was mir eine Pause verschaffte.Ich wurde für einen Job eingestellt, der auf allgemeinen Ingenieurkenntnissen basiert, nicht auf spezifischen Sprachkenntnissen, gerade weil "sich sowieso alles in 6 Monaten ändern wird".Dies hängt jedoch von den spezifischen Rollenanforderungen ab.
Als jemand, der sich aktiv in C # entwickelt (und als jemand, der sich bis zu einem gewissen Grad als leitender Programmierer bezeichnen könnte), kann ich bestätigen, dass Sie die Grundstrukturen von C # kennen (aber keine tatsächliche Erfahrung haben) und einen Hintergrund im Codieren habenbestenfalls eine Juniorposition.Trotzdem würde ich erwarten, dass dies auch für jede andere Sprache gilt.Wenn ich anfangen würde, PHP oder Java zu machen ... all dieser Codierungshintergrund könnte mich zu einem GUTEN Nachwuchskandidaten machen (der den Wettbewerb "frisch vom Kollegen" leicht schlagen kann), aber immer noch ein Junior.
@jpmc26: Oh haha yeah, LINQ war einer der besten Teile von C # :) Die Syntax sieht jetzt einfach so anders aus, dass ich nicht einmal ...
tymtam
2018-05-31 09:26:25 UTC
view on stackexchange narkive permalink

RE: Fahrrad fahren

Programmieren ist wie Fahrrad fahren

Fahrrad fahren schnell besteht aus zwei Elementen :

  • die Fähigkeiten
  • die Fitness

In Ihrem Fall scheinen Sie nicht in der Lage zu sein, Fitness zu demonstrieren.

Stellen Sie sich vor, Sie sind Manager des örtlichen Fahrradclubs und suchen einen neuen Fahrer für Ihr Team. Würden Sie einen Fahrer aufnehmen, der seit 2 Jahren nicht mehr trainiert?

In vielen Fällen möchten Fahrradclubs, die sich auf Leistung konzentrieren, einen Radfahrer, der zum Zeitpunkt der Einstellung in hervorragender Form ist, damit er dies kann Vermeiden Sie das Kostentraining des Fahrers.

Betreff: Computer verstehen

Um zu programmieren, muss man verstehen, wie Computer funktionieren und wie sie "denken". Wenn Sie eine Sprache beherrschen, ist es nicht schwer, eine andere zu lernen.

Kosten für die Weiterbildung

Es ist unerheblich, ob es schwierig oder einfach ist. Was zählt, ist, wie lange es dauern wird, bis Sie produktiv sind, und wenn Sie die Sprache / Technologien nicht kennen, kann dies Monate dauern.

Lösung

Ich schlage vor, offen zu werden Quellprojekt.

Mit öffentlichen Verpflichtungen können Sie Ihre Beiträge (die Ihre Fähigkeiten zeigen) leicht anzeigen, und die 2-Jahres-Lücke wird irrelevant.

Das ist etwas tangential, aber was genau ist ein "Fahrradclub"?Ihre Antwort scheint zu implizieren, dass es sich um eine Art professionelles / wettbewerbsfähiges Team handelt, aber ich habe noch nie davon gehört (für Fahrräder), insbesondere auf lokaler Ebene.
@V2Blast Die mir bekannten Fahrradclubs (von meinen College-Studenten in Mumbai und von Kollegen in Tokio) machen Langstreckenradfahren, Geschwindigkeitstraining und so weiter, und während die Mitglieder keine professionellen Radfahrer sind (nur reguläre Studenten und Angestellte mit einemHobby) nehmen sie wettbewerbsfähig an nahegelegenen Radsportveranstaltungen teil.
eine ausgezeichnete Antwort.
Meine Erfahrung mit Open Source C # -Projekten ist, dass sie * sehr * schwer zu lesen sind.Die OO-Betonung tendiert dazu, die eigentliche Logik des Programms zu verschleiern, was es nahezu unmöglich macht, zu folgen, wenn Sie nicht von Grund auf involviert waren und keine Woche in Vollzeit verbringen möchten, nur um sich auf dem Laufenden zu halten.
@jpmc26 das ist der Punkt, es ist das Lernen, anderen Code zu lesen und zu verstehen, was den Code zu einem guten Beispielprojekt macht
@WendyG Sie missverstehen.Ich sage, sie sind schlechter Code.Guter Code * enthüllt * das Denken des Entwicklers.Es macht die Logik offensichtlich, anstatt sie wie diese Projekte zu verschleiern.Sie geben kein Beispiel an, dem gefolgt werden sollte.
@jpmc26 ok, Punkt verstanden
@jpmc26 Ich denke, das ist überhaupt nicht spezifisch für Open Source.Man könnte "Open Source" aus Ihrem Kommentar entfernen und es wäre trotzdem angebracht: "Meine Erfahrung mit o̶p̶e̶n̶ ̶s̶o̶u̶r̶c̶e̶ C # -Projekten ist, dass sie sehr schwer zu lesen sind."
@jpmc26 Open Source _Toy_ Projekte oder Projekt im Allgemeinen?Wenn dies die Fähigkeiten des Autors demonstrieren soll, dann wissen Sie.
@ThorbjørnRavnAndersen Die, die ich mir am meisten angesehen habe, habe ich tatsächlich versucht, in professionellen Projekten zu verwenden.Einer von ihnen war NuGet.Wir sprechen hier also von Code aus der realen Welt.
paparazzo
2018-05-31 21:35:38 UTC
view on stackexchange narkive permalink

Ich will Sie nicht verprügeln, aber Ihre Darstellung von Programmierkenntnissen ist naiv.

Die Syntax ist einfach. Die Syntax zum Nachschlagen ist einfach. Was schwer zu wissen ist, ist, was man nachschlagen muss.

Wann würden Sie eine Aufgabe im Vergleich zu einem Thread verwenden? LINQ gibt es schon seit ein paar Jahren, aber ich wette, es gab es nicht, als Sie auf dem College waren. Wann würden Sie EF im Vergleich zu SQLLINQ im Vergleich zu rohem TSQL verwenden? Haben Sie die Nachrichtenwarteschlange verwendet?

Ich codiere C # in den letzten 10 Jahren in Vollzeit und kenne nicht alle Funktionen. Vor 4 Jahren war ich Vollzeit ASP.NET. Ich bin mit keinem der neuen Dinge auf dem Laufenden. Ich würde einen Monat brauchen, um auf 1/2 Geschwindigkeit zu kommen, und 4-6 Monate, um mich mit den neuen Sachen voll auf den neuesten Stand zu bringen. Die Arbeitgeber fordern die neuen Produkte, weil die Verbraucher die neuen Produkte fordern. Verbraucher wissen möglicherweise nicht, was Asyc ist, aber sie wissen, wann die Benutzeroberfläche einfriert.

Ich schlage vor, Sie lassen die Einstellung fallen und informieren sich über die neuesten Funktionen.

BittermanAndy
2018-05-31 22:09:26 UTC
view on stackexchange narkive permalink

Die Hauptmethode, um Interviewer davon zu überzeugen, dass Sie nach einer Pause nicht vergessen haben, wie Sie Ihre Arbeit erledigen sollen, besteht darin, sie zu zeigen . Erstellen Sie ein Freizeitprojekt, entwickeln Sie es von Anfang bis Ende und geben Sie die Quelle und / oder Links zu dem Ort an, an dem es gehostet wird. "Sie haben Angst, ich hätte vergessen, wie man programmiert? Nun, hier ist ein Code, den ich letzte Woche geschrieben habe!"

Ein größeres Problem ist die offensichtliche Annahme, dass Programmieren etwas ist, das Sie einmal und nie wieder lernen müssen Der Rest ist nur ein Detail. Insbesondere der Vorschlag, dass es für Sie trivial wäre, C # zu lernen, weil Sie JavaScript kennen, ist eine rote Fahne. Zunächst einmal ist der Unterschied zwischen stark und schwach typisierten Sprachen enorm! Wenn Sie JS kennen, können Sie Code schreiben, der in C # kompiliert wurde? Vielleicht könnten Sie es, besonders mit Hilfe einer IDE. Aber wäre es idiomatisch, das (enorme) .NET Framework richtig zu nutzen, den GC effizient zu nutzen, gegebenenfalls parallel zu laufen usw.? Ich habe Zweifel.

Um ein Beispiel aus meiner Erfahrung zu geben: Als ich C # gelernt habe, nachdem ich zuvor hauptsächlich in C und C ++ (alle syntaktisch ähnlichen Sprachen) gearbeitet hatte, habe ich geschätzt, dass ich zwei oder drei Jahre gebraucht habe ein ähnliches Maß an Fachwissen zu erreichen. Hat dieser potenzielle Arbeitgeber zwei oder drei Jahre Zeit zu warten? Vielleicht nicht.

Es ist wahr, dass das Verständnis der Arbeitgeber weiß, dass gute Entwickler irgendwann neue Sprachen lernen können. Es ist auch wahr, dass gute Arbeitgeber ihre Mitarbeiter schulen, anstatt darauf zu warten, dass ein anderes Unternehmen dies für sie tut. Aber es ist auch wahr, dass je früher ein neuer Mitarbeiter voll produktiv werden kann, desto besser für den Arbeitgeber. Es ist möglich, dass ihre Bedenken nicht so sehr Ihr angeborenes Codierungstalent betreffen wie Ihre aktuellen Fähigkeiten und relevanten Kenntnisse. Je veralteter diese Dinge sind, desto länger brauchen Sie, um sich auf den neuesten Stand zu bringen, und bis dies geschieht, werden Sie ein Gehalt beziehen, ohne (viel) beizutragen. So gesehen ist es durchaus verständlich, dass ein Arbeitgeber Vorbehalte hat. Um diese Vorbehalte zu überwinden, zeigen Sie ihnen , dass Sie wissen, was Sie wissen müssen. Wenn Sie zu diesem Zweck an einem Projekt arbeiten, werden Sie möglicherweise sogar feststellen, dass es nicht so einfach ist, von einer Sache zur anderen zu wechseln, wie Sie zu denken scheinen.

upvoted, weil Sie einige gute Punkte machen (insbesondere "zeigen Sie sie"), obwohl ich nicht einverstanden bin, dass es Jahre dauert, um Kenntnisse in einer Sprache zu erreichen.Nach den ersten paar ist das Erlernen neuer Sprachen viel schneller.
Die meisten modernen Sprachen können in wenigen Tagen oder im schlimmsten Fall - Wochen - gelernt werden.Es sind immer die Frameworks und verknüpften Bibliotheken, die Erfahrung und Zeit benötigen.Zum Beispiel könnte jeder C-Flavour-Entwickler in wenigen Tagen die Syntax und Grammatik für die Apple Swift-Programmierung erlernen, aber das Sammeln von Wissen und Erfahrung in allen Kern-Frameworks erfordert viel Zeit und Engagement.
Genau das.Eine Sprache zu lernen, die gut genug ist, um Code zu schreiben, der kompiliert wird und sogar im Grunde genommen funktioniert, ist ziemlich trivial.Dies ist nicht dasselbe wie ein kompetenter oder erfahrener professioneller Entwickler in dieser Sprache (und verwandten Plattformen, Frameworks usw.).
motosubatsu
2018-05-31 16:00:59 UTC
view on stackexchange narkive permalink

Angenommen, Ihre C # -Erfahrung war zu Beginn der 15 Jahre, über die Sie sprechen (vorausgesetzt, Sie haben erwähnt, dass es sich um ein College handelt), und sie stellten speziell für eine C # -Position ein, schlugen sie nicht wirklich vor, dass Sie eine hatten den Job "vergessen" - mehr, als du es nie wirklich getan hast. C # und das .NET Framework von vor ~ 15 Jahren sind ein ganz anderes Tier als das, was Sie heute haben. So sehr, dass die College-Erfahrung fast wertlos wäre.

Ja, Ihre Erfahrung in anderen Sprachen würde Ihnen einen nicht unwesentlichen Vorsprung beim Lernen verschaffen, aber die Realität ist, dass Sie dabei sind Zumindest in den ersten Monaten eine ziemlich steile Lernkurve. Wenn ein Unternehmen jemanden anstellt, der Erfahrung in einem bestimmten Sprach- / Technologie-Stack hat, dann liegt das im Allgemeinen daran, dass es jemanden braucht, der sozusagen sofort einsatzbereit ist und sofort produktiv ist. nicht in x Monaten.

Ich habe mit einem Personalvermittler über eine andere offene Stelle hier in der Stadt gesprochen. Er spielte auf die Idee an, dass es seinem Kunden vielleicht nicht gefällt, dass ich seit einiger Zeit nicht mehr professionell mit der Webentwicklung gearbeitet habe.

Wenn die Position für eine Full-Stack- oder Front-End-basierte Rolle war dann kann ich sehen, worauf der Personalvermittler abzielte - insbesondere die JavaScript-Frameworks bewegen sich sehr schnell und dies kann sie betreffen. Um dieser Angst entgegenzuwirken, ist es am besten, das Wissen darüber zu demonstrieren, wie sich die Entwicklungslandschaft in dieser Zwischenzeit verändert hat.

Erklären Sie den Personalvermittlern / Interviewern, dass Sie verstehen, dass sich die Branche schnell bewegt, dass Sie jedoch mit den Änderungen in Ihrer persönlichen Zeit Schritt gehalten haben (vorausgesetzt, Sie haben - wenn nicht, nehmen Sie sich ein oder zwei Wochenenden Zeit und machen Sie es wahr). und dass Sie das Gefühl haben, sofort produktiv zu sein, wenn Sie eine neue Position einnehmen. Wenn Sie Zeit haben, können Sie im Idealfall einige Codebeispiele in den Frameworks usw. erstellen, die seit Ihrem Ausscheiden aus der Branche veröffentlicht wurden, und diese auf GitHub oder ähnlichem veröffentlichen, um Ihre Ansprüche zu sichern.

Einige Arbeitgeber mag sich immer noch der Idee widersetzen, aber die meisten Vernünftigen sollten es verstehen.

Diese.Vor fünf Jahren war ich Ruby on Rails-Entwickler.Ich würde mich jetzt * nie * dafür bewerben.Ich habe einige Frontend-Sachen mit CSS und jQuery gemacht.Aber angesichts der Explosion der Frameworks würde ich jetzt nie versuchen, einen Front-End-Job zu bekommen.
Eric Duminil
2018-06-01 14:27:56 UTC
view on stackexchange narkive permalink

Das Problem ist nicht die lange Pause.

Sie vergleichen a:

  • meist statisch
  • kompiliert
  • stark typisierte
  • klassenbasierte

Sprache (C #) zu einer

  • dynamischen
  • interpretierten Sprache
  • schwach typisierte
  • prototypbasierte

Sprache (Javascript).

Und Sie denken, dass sie austauschbar sind, weil Sie haben eine ähnliche Syntax. Wenn ich der Interviewer wäre, wären dies mehr als genug Informationen, um die Diskussion sofort zu beenden.

Mahboubi Salim
2018-05-31 08:46:38 UTC
view on stackexchange narkive permalink

Vielleicht möchten Sie diesen Punkt selbst ansprechen, bevor sie es tun, und das Steuer übernehmen, während Sie erklären, dass die Pause nicht wirklich ein Nachteil ist. Versuchen Sie, ihnen ein Kompliment zu machen, z. "Sie sind ein erfahrener Entwickler, Sie wissen, dass es nicht darum geht, sich die Syntax zu merken, sondern zu wissen, was man nicht weiß."
Vielleicht möchten Sie auch zeigen, dass Sie wissen, was neu ist und was gut mit dem Programmierstapel funktioniert . Beispiel: "Während ich in meiner Pause war, habe ich die Nachrichten und Trends von Sprache X und Framework Y verfolgt. Ich kann leicht etwas bauen, das den Standards von 2018 entspricht."

"Du bist ein älterer Entwickler". Bedeutet das nicht, dass du einer bist?Das in einem C # Senior Dev Interview nach dem Satz "Ich hatte ... C # ... seit dem College nicht mehr als 30 Jahre alt" zu sagen ... Es ist, als würde man sich auf eine Kochposition bewerben und sagen, dass man einmal eine Mikrowelle benutzt hatVor 15 Jahren und das ist deine Erfahrung.
@DragandDrop Ich denke, das ist ein Vorschlag für das, was das OP dem Interviewer sagen könnte, der vermutlich ein leitender Entwickler ist.
Sascha
2018-05-31 12:01:58 UTC
view on stackexchange narkive permalink

Sie müssen erkennen, dass der Hauptprogrammierer wahrscheinlich einen Punkt hat. Ich würde nicht zulassen, dass jemand, der sich so beschreibt, wie Sie es tun (JavaScript-Hintergrund, Kategorisierung von Sprachen wie Sie), eine große und kritische OOP-Codebasis schließt, ohne dass Sie ernsthafte Fragen beantworten.

Für mich ist es das etwas ganz anderes, wenn Sie in einer prototypbasierten Sprache oder einer klassenbasierten Sprache codieren. Ich selbst beherrsche viele Sprachen, aber alle sind klassenbasiert (auch wenn ich kein grundlegendes Problem habe, das eine gegenüber der anderen bevorzugt). Ich weiß, dass meine Schwäche darin besteht, prototypbasierte Sprachen zu verwenden - und wenn ich mich für eine Stelle bewerben würde In diesen Fällen ist es offensichtlich, dass ich die mich interviewende technische Person davon überzeugen muss, dass ich weiß, was los ist.

Was Sie in einer solchen Situation normalerweise zeigen sollten, ist der Versuch, das zu klären, was fehlt von Ihren Fähigkeiten, einschließlich der Annahme, dass Sie möglicherweise nicht die technisch kompetenteste Person für den Job sind, sondern die professionellste mit dem Willen zu lernen und das zu tun, was benötigt wird.

Old_Lamplighter
2018-05-31 16:48:41 UTC
view on stackexchange narkive permalink

Programmieren ist eine Fähigkeit, Sprachen sind nur Werkzeuge. Das beste Gegenargument wäre. "Wenn Sie einen erfahrenen Automechaniker hätten, würden Sie an seiner Fähigkeit zweifeln, weil er in letzter Zeit keinen Ölfilterschlüssel verwendet hat?"

Die Fähigkeit ist wichtiger als das Werkzeug.

chucksmash
2018-06-02 23:44:59 UTC
view on stackexchange narkive permalink

Ich verstehe, woher Sie kommen. Ich bin ein Software-Ingenieur, der als Hobbyist angefangen hat, und ich hatte die Zeit, Personalvermittler und Personalabteilungen davon zu überzeugen, mir meine erste Chance zu geben. Es hört sich so an, als wären die Barrieren, auf die Sie stoßen, nachdem Sie eine Weile keine Entwicklungsarbeit geleistet haben, ziemlich ähnlich. In diesem Sinne mein Rat:

Ich habe Ausbildung und Berufserfahrung in der IT, insbesondere in der Webentwicklung. Ich programmiere und schreibe seit 15 Jahren Markup. Ich habe professionell als Webentwickler gearbeitet und diese Fähigkeiten in meinem Privatleben eingesetzt.

Was ich sagen möchte, mag albern oder oberflächlich klingen, aber es wurde in meinem Leben geboren Erfahrung während meiner letzten zehn Jahre in der Belegschaft. Ich habe festgestellt, dass Unternehmen, die ihre Entwickler als "IT" beschreiben und Elemente wie "Markup schreiben" in ihre Stellenbeschreibungen aufnehmen, eher traditionelle, weniger flexible Abläufe sind. IT ist in der Regel auch eine Kostenstelle innerhalb einer Nicht-Tech-Organisation, während Entwicklung in einem auf Technologie ausgerichteten Unternehmen eher "dort ist, wo die Magie geschieht". Nachdem Sie sich auf beiden Seiten dieser Kluft befunden haben (vier Jahre in der Qualitätssicherung / Programmierung in einer IT-Rolle, der Rest in der Nicht-IT-Programmierung), möchte ich Sie ermutigen, wenn möglich die letztere Rolle anzustreben. Nach meiner anekdotischen Erfahrung kümmert sich die IT viel mehr um die Zertifizierungen, die Sie haben, und wie gut Sie als Kandidat auf dem Papier sind (z. B. haben Sie Beschäftigungslücken?), Während sich Software-Shops anscheinend viel mehr darum kümmern, ob Sie dies lösen können Whiteboard-Problem / Programmierauftrag zum Mitnehmen ", was meiner Meinung nach zu Ihren Gunsten funktionieren würde. Dies ist etwas tangential zum Rest der Antwort, aber dennoch eine Überlegung wert!

Ich habe in den letzten 2 Jahren eine Pause von der IT-Branche eingelegt, weil ich nur eine Pause brauchte. Ich habe vor kurzem versucht, wieder in die Belegschaft einzusteigen.

Es ist hilfreich, etwas zu zeigen oder eine Geschichte über Ihre Pause zu erzählen. Wenn die Pause lautete: "Ich war gerade beim Programmieren ausgebrannt", verstehe ich das total, aber Sie möchten einen positiven Dreh haben, um sie in Interviews umzusetzen. Es wäre schön, wenn Sie Ihre Gründe dafür einfach formulieren könnten, aber ich denke, ein wenig persönliches Marketing hier würde Ihre Chancen verbessern. Haben Sie in den letzten zwei Jahren die Gelegenheit gehabt, an etwas Interessantem zu arbeiten, zu reisen oder einer Leidenschaft zu folgen, die nicht programmiert?

Ende letzten Jahres fand mich der CEO eines lokalen Unternehmens LinkedIn und forderte mich auf, mich zu bewerben. Ich habe mich telefonisch mit dem CEO und dem Chefprogrammierer getroffen. Der Chefprogrammierer ließ es so klingen, als hätte ich keine Chance, weil ich seit dem College keine bestimmte Programmiersprache (C #) verwendet hatte.

Wenn Sie sich auch eine Auszeit vom persönlichen Bereich genommen haben Bei Softwareprojekten ist es gut, diese jetzt wieder aufzunehmen, anstatt nach Ihrer Rückkehr zur Belegschaft. Als ich versuchte, den Sprung vom Hobbyisten zum Profi zu schaffen, lieferten Nebenprojekte Beweise, um das Vertrauen der Personalchefs zu stärken, dass ich am ersten Tag nicht einfach abstürzen und brennen würde.

Hier ist ein Beispiel Ich habe (viel später) erstellt, als ich versuchte, eine neue Sprache (Rust) zu lernen. Es ist ein amateurhafter Tetris, geschrieben in einer Sprache, die ich nicht beherrscht habe. Selbst wenn es weniger als professionell ist, hat es mir geholfen, meinen eigenen Fall zu vertreten, wenn ich auf eine Arbeit hinweisen kann, die ich erfolgreich in einer für mich neuen Sprache abgeschlossen habe. Der Nachweis Ihrer C # -Kompetenz in einem Nebenprojekt würde die Einstellung aus Sicht des Unternehmens gefährden.

Obwohl ich von dieser herablassenden Bemerkung ein wenig beleidigt war, antwortete ich nicht und ließ es einfach sein . Aber ich wollte ihn wirklich an seine Stelle setzen. Programmieren ist wie Fahrrad fahren oder Schuhe binden. Es ist nicht etwas, das Sie einfach "vergessen".

Ich sympathisiere hier mit Ihnen. Die synchronen Anforderungs- / Antwort-Apps, die ich 2012 auf Django erstellt habe, haben jedoch kaum Ähnlichkeit mit den Apps für einzelne Seiten, die derzeit auf generischen Rest-APIs erstellt werden. So viel Logik ist in das Frontend eingezogen. Sie wissen immer noch, wie man das Radfahrzeug fährt, das Sie fahren gelernt haben, aber die Kinder fahren heutzutage Einräder. Sie müssen nicht die neuesten und besten verwenden, um nützliche Schnittstellen zu erstellen, aber ich habe festgestellt, dass Einstellungsanforderungen eine Tendenz zu neueren Frameworks haben. Sie sollten sich zumindest mit ihnen vertraut machen, damit Sie gut begründete Argumente dafür vorbringen können, wann sie angemessen sind oder nicht.

Jeder gute Programmierer kann sich auf unzählige Ressourcen und Dokumentationen verlassen, wenn er a vergisst Befehl oder eine Methode. Wenn Sie eine Sprache kennen, ist es nicht schwer, eine andere zu lernen.

Richtig und falsch. Ich hatte Jobs, bei denen ich Code in Java und C # beigesteuert habe, aber Python ist mein Brot und ich kann zuversichtlich sagen, dass ich, obwohl ich die Aufgaben erledigt habe, die ich in diesen anderen Sprachen erledigen musste, dies ohne Kenntnis der Sprachsprache und getan habe Mein Code hatte sicherlich "einen Akzent", der mich als Nicht-Muttersprachler verriet.

Bis heute habe ich mit einem Personalvermittler über eine andere offene Position gesprochen. Er spielte auf die Idee an, dass es seinem Kunden vielleicht nicht gefällt, dass ich seit einiger Zeit nicht mehr professionell mit Webentwicklung gearbeitet habe. Ich lasse das auch zu, aber ich werde mich trotzdem um eine Stelle bemühen.

Wie gehe ich mit solchen Arbeitgebern oder Personalvermittlern um? Lohnt es sich, eine solche "Hexenjagd" zu widerlegen?

Indem du besonders gut bist! Sie erleben keine Hexenjagd; Sie erleben die Zweifel von Menschen, die mit Ihrer Arbeit und Ihren Fähigkeiten nicht vertraut sind. Dies wird noch verstärkt, da eine gute Leistung in Ihrer aktuellen Rolle als starker Beweis für Kompetenz angesehen wird (wie ich festgestellt habe, als ich versucht habe, einen Job als Hobbyist ohne diese Erfolgsbilanz zu finden). Es ist erstaunlich, wie wichtig diese Art von Beweis ist. 2011 konnte ich niemanden bezahlen, der mich für sie programmieren ließ, aber nach einem Jahr Erfahrung mit dem Jobtitel-Programmierer (in dem ich selbst kein sehr guter Programmierer war) begann ich, Personalvermittler dazu zu bringen, sich wöchentlich oder sogar täglich zu melden / p>

Sie müssen den Interviewern ein warmes und verschwommenes Gefühl für Ihre Fähigkeit geben, die Aufgabe zu erfüllen, die sie erledigen müssen. Sie können dies tun, indem Sie Ihre Fähigkeiten auffrischen, Ihre Interviewtechnik schärfen und ihnen die Arbeit zeigen, die Sie kürzlich erledigt haben. Wenn Sie in letzter Zeit noch nicht gearbeitet haben, ist jetzt genau der richtige Zeitpunkt, um in ein Nebenprojekt einzusteigen, das Ihre Programmierkenntnisse entstaubt UND Ihnen ein fertiges Projekt liefert, das Sie mit den Interviewern besprechen können.

AJFaraday
2018-05-31 13:34:51 UTC
view on stackexchange narkive permalink

Mein bester Rat hier ist Show, sag es nicht.

Wenn sie so sprechen, als hättest du vergessen, was zu tun ist, antworte mit angewandtem Wissen. Zeigen Sie, dass Sie Erfahrung haben.

Schreiben Sie in Ihrer Freizeit ein oder zwei Apps, stellen Sie einen Teil Ihrer Arbeit online und fügen Sie sie in Anschreiben usw. ein, damit sie Ihre Arbeit sehen können. Besser noch, lassen Sie den Code für die Anzeige auf GitHub oder einem ähnlichen Dienst offen.


Auch eine kurze Notiz aus meiner persönlichen Erfahrung. Personalvermittler verwenden einen Scatter-Shot-Ansatz, um so viele potenzielle Kandidaten wie möglich auf die Positionen zu bringen, die sie zu besetzen versuchen. Das war sehr frustrierend für mich, als ich nach einer Einstiegsposition suchte und 300 Meilen zum Vorstellungsgespräch für eine Position geschickt wurde, deren Gehalt höher ist als ich jetzt, 8 Jahre später, um zu verdienen.

I. fand schließlich Arbeit, als einer dieser Personalvermittler sich sehr direkt entschied, den Kontakt zu unterbrechen, weil ich keinen der unangemessenen Jobs bekam, für die er mich vorgeschlagen hatte.

Ich googelte Jobs bei Rails (meinem Hauptmedium). und schickte spekulative E-Mails sowie die Beantwortung von Stellenanzeigen. Ich fand, dass der Job von Anfang an sehr ehrlich zu meiner Position war, anstatt durch einen professionellen Personalvermittler zu arbeiten.

Lange Rede, kurzer Sinn: Wenn der Weg der Personalvermittler für Sie nicht funktioniert, versuchen Sie es auf eine andere Weise.

Voo
2018-05-31 19:24:39 UTC
view on stackexchange narkive permalink

Nach meiner Erfahrung als Interviewer und Interviewter hatten Sie ein bisschen Pech. Vielen Unternehmen ist es egal, ob ihr neuer Mitarbeiter die Sprache oder den Rahmen kennt, den sie gerade in ihrem aktuellen Projekt verwenden.

Nachdem sich die IT in einem sich schnell ändernden Bereich befindet, wird der neueste und coolste heute morgen alter, knuspriger Legacy-Code sein. Wenn ich jemanden interviewe, möchte ich herausfinden, ob er gute CS-Grundlagen hat und leicht neue Dinge lernen kann, sei es Sprachen, Frameworks oder Programmierstile.

Motivation und Interesse am Programmieren (irgendwelche coolen Projekte auf Github? Nebenbei an einem Open-Source-Projekt arbeiten? Was halten Sie von den neuesten Entwicklungen in Ihrer Lieblingssprache? ..) sind weitaus mehr wichtig, als ob Sie C # kennen.

Das impliziert ziemlich genau, welche Art von Antwort ich einem Interviewer in dieser Situation geben würde: Nein, ich kenne C # momentan nicht, aber ich bin motiviert, es auszuwählen Ich habe viel mehr gültige Fähigkeiten, die ich in das Unternehmen einbringen kann, als eine bestimmte Syntax zu kennen.

Michael Kay
2018-05-31 15:34:59 UTC
view on stackexchange narkive permalink

Nehmen Sie zunächst nicht an, dass eine "aggressive" Frage eines Interviewers bedeutet, dass er Sie negativ beurteilt. Sie versuchen möglicherweise nur zu sehen, wie Sie auf ein wenig Druck reagieren.

Zweitens gibt es Leute in dieser Branche, die wirklich glauben, dass Sie 10 Jahre Erfahrung mit allen Technologien haben müssen, die Sie verwenden werden bei einem neuen Projekt und verstehen überhaupt nicht, dass gute Programmierer ständig neue Tricks lernen und dass sie wirklich jemanden wollen, der gut darin ist, neue Fähigkeiten zu erlernen. Nutzen Sie das Interview als Gelegenheit, um ihnen zu sagen, dass sie falsch liegen: Sagen Sie ihnen, wie viele neue Sprachen und Technologien Sie in Ihrer Karriere beherrschen. Wenn das funktioniert, haben Sie es mit einem Arbeitgeber zu tun, für den es gut ist, zu arbeiten. Wenn dies nicht der Fall ist, sind Sie am besten dran.

Jay
2018-06-01 10:39:39 UTC
view on stackexchange narkive permalink

Einige ausgezeichnete Antworten, die das OP vorschlagen, ein Spielzeugprojekt zu machen. Ich würde ihm vorschlagen, noch einen Schritt weiter zu gehen und zu versuchen, als freiberuflicher Webentwickler zu arbeiten. Es gibt viele Webentwicklungsaufgaben auf der Freelancer-Website. Sobald er dort einige Projekte durchgeführt hat, kann er sein freiberufliches Profil mit linkedin verknüpfen.

Ich stimme vollkommen zu: Ich denke, was wirklich gesagt wird, ist nicht, dass es zu lange her ist (seit dem College), sondern dass es überhaupt nicht genug Erfahrung gibt (nur College).
Ja, das kann ein guter Rat sein.Ein Spielzeugprojekt kann sogar noch wertvoller sein als freiberuflich tätig, da es auch Eigenschaften von Vision, Initiative und nicht zuletzt * Leidenschaft * für die Arbeit zeigt.Dies ist nicht immer nützlich, aber es wird Sie sicher von der Masse der Bewerber für die Stellen unterscheiden, an denen es geschätzt wird.
RandomUs1r
2018-06-01 00:06:54 UTC
view on stackexchange narkive permalink

Zwei Dinge:

Die Meinung eines Personalvermittlers ist nicht sehr nützlich, er ist nicht der Personalchef und hat kein Mitspracherecht bei der endgültigen Entscheidung. Der Kommentar Ihres Personalvermittlers war unprofessionell, aber alltäglich, da es sich nur um Menschen wie alle anderen handelt. Sie setzen auch darauf, dass Sie im Austausch für Ihre Zeit einen Job bekommen, so dass sie möglicherweise nicht mit Ihnen zusammenarbeiten möchten. Wie auch immer, machen Sie weiter, es gibt viele Personalvermittler da draußen und wie gesagt, sie sind wegen des Geldes dabei, um Ihnen nicht zu helfen.

In Ihrer Situation empfehle ich eine direkte Bewerbung, möglicherweise mit einem Anschreiben Geben Sie einige Ihrer Qualifikationen an, aber hier ist, worauf Sie stoßen werden:

Wenn ich zwei Programmierer einstellen kann und beide das Problem lösen können, bei denen einer über die jüngsten Erfahrungen verfügt und der andere nicht, welcher Denken Sie, dass es schneller (im Budget) gelöst werden kann?



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...