Frage:
Potenzieller Arbeitgeber bittet um Codebeispiel
DroidGuru
2016-09-30 20:00:18 UTC
view on stackexchange narkive permalink

Ich habe kürzlich ein Vorstellungsgespräch für eine Position in der Softwareentwicklung geführt, bei der der Arbeitgeber mich gebeten hat, ein Codebeispiel zur Beurteilung meines Erfahrungsniveaus bereitzustellen. Ich habe eine Bewerbung eingereicht, die ich kürzlich als Nebenprojekt abgeschlossen habe. Es hatte die Grundlagen dessen, wonach sie in der technischen Spezifikation für die Rolle suchten, also dachte ich, dass es ausreichen würde. Aber sie kamen nach ein paar Tagen zu mir zurück und lehnten mich ab, da sie mich als zu "jünger" für die Position beurteilten. Ich habe an komplizierteren Anwendungen gearbeitet, aber dieser Code ist durch NDAs und dergleichen geschützt.

Wie kann ich einen potenziellen Arbeitgeber beeindrucken und potenzielle Rechtsstreitigkeiten in Zukunft vermeiden?

Schreiben Sie ein komplexeres Codebeispiel.
Unternehmen, die nach Codebeispielen fragen, haben normalerweise ein definiertes Projekt und bitten Sie, dies zu tun. Andernfalls hätten sie Sie bitten sollen, eine Liste von Funktionen zu implementieren und Ihnen im Grunde eine einfache "Anforderungsliste" zur Verfügung zu stellen.
Ich denke, wenn Sie auf github hochladen und einen Link bereitstellen, können Sie loslegen. Ich finde es jedoch sehr selten, dass Unternehmen nach Code fragen, sodass ich nicht zu viel Zeit damit verbringen würde, mir darüber Sorgen zu machen. Vielleicht ein oder zwei wirklich gute Samples, und sie müssen nicht sehr komplex sein.
Mögliches Duplikat von [Wonach suchen Arbeitgeber, wenn sie während des Einstellungsprozesses für einen Programmierer nach Beispielcode fragen?] (Https://workplace.stackexchange.com/questions/1309/what-are-employers-looking-for-wann-sie-fragen-zu-sehen-Beispiel-Code-während-der-Hirin)
Siehe auch: [Recruiter fragt nach Beispielcode] (https://workplace.stackexchange.com/q/69744/168)
Fünf antworten:
#1
+11
Thomas Owens
2016-09-30 21:01:30 UTC
view on stackexchange narkive permalink

Als erstes müssen Sie den Arbeitgeber um ein spezifisches Feedback bitten. Nicht alle Arbeitgeber werden auf eine solche Anfrage antworten - es kann gegen die Richtlinien verstoßen, etwas anderes zu sagen, als einen Kandidaten anzunehmen oder abzulehnen. Andere sind möglicherweise eher mit Tipps und Vorschlägen konfrontiert.

Da Sie Ihren eigenen persönlichen Code und kein Unternehmensmuster eingereicht haben, sollten Sie einige andere Meinungen zu Ihrem Code einholen. Code Review Stack Exchange ist eine Option. Wenn Sie Freunde haben, die auch Softwareentwickler sind, können diese möglicherweise auch helfen. Wenn Sie an einem vom Unternehmen bereitgestellten Problem gearbeitet haben, sollten Sie ihn fragen, bevor Sie den Code an andere Personen weitergeben, da diese möglicherweise mögliche Lösungen für ihre an öffentlichen Orten veröffentlichten Codierungsprobleme nicht schätzen, selbst wenn die Lösung nicht ihren Standards entspricht

Wenn Sie in Zukunft nach einem Codebeispiel gefragt werden, können Sie sie fragen, ob sie etwas Besonderes haben, das sie sehen möchten, oder ein Problem, das Sie lösen können. Im Idealfall lösen Sie dies in den Technologien, die das Unternehmen verwendet, wenn Sie sie kennen. Einige Unternehmen akzeptieren diese jedoch eher und betrachten allgemeinere Ansätze zur Lösung des Problems.

Wenn das Unternehmen keine Angebote macht Probleme finden Sie Beispiele. Sie können zu Project Euler, Programmierpraxis, TopCoder oder Programmierpuzzles und Code Golf Stack Exchange wechseln. Erstellen Sie ein GitHub-Repository und verbringen Sie eine angemessene Zeit mit der Entwicklung einiger Beispiele. Was vernünftig ist, hängt von Ihnen ab. Da es sich um öffentliche Beispiele handelt, würde ich meinen obigen Rat befolgen - andere Personen dazu bringen, diese zu überprüfen und Feedback zu geben.

Die Vorstellung, dass ein Programmierer ein Portfolio benötigt, ist weit verbreitet, aber für Einzelpersonen ein großer Nachteil. Viele Jobs beinhalten das Erstellen von proprietärer und Closed-Source-Software sowie mehr als 40 Stunden / Woche Aufwand, so dass nur wenig Zeit außerhalb der Arbeit bleibt, um ein persönliches Leben zu führen und gleichzeitig ein respektvolles Portfolio aufzubauen. Wenn ein Unternehmen nicht bereit ist, die Natur von Propriety-Software und die Notwendigkeit einer Work-Life-Balance im Einstellungsprozess zu respektieren und zu verstehen, wäre dies eine große rote Fahne in Bezug auf die Unternehmenskultur und den Umgang mit Mitarbeitern / p>

"Code Golf Stack Exchange" ist für Masochisten.
@gnasher Wahrscheinlich, aber ich habe nicht gesagt, dass Sie dort teilnehmen müssen. Einige Fragen sind interessant und können gelöst und in ein öffentliches Repo geworfen werden.
Ich stimme der Bitte um Rückmeldung zu. Was suchen sie genau? Spezifische Konzeptdemonstration, Formatierung, Dokumentation, all das oben Genannte. Ich finde es seltsam, dass ein Entwickler ein Portfolio von Code mit sich herumträgt, aber ich bin kein Entwickler, also ...
#2
+6
Kilisi
2016-10-01 00:04:13 UTC
view on stackexchange narkive permalink

Sie hatten diesmal Pech. Überprüfen Sie den verwendeten Code, um festzustellen, wie gut er geschrieben ist. Sie können nicht wissen, ob es das Codebeispiel war oder nur ein Typ, der es gesehen hat, der die Anordnung nicht mochte.

Wenn es gut formatierter, gut geschriebener Code ist, sollte er es haben war in Ordnung.

Sie können einige Stunden damit verbringen, nutzlosen Beispielcode für ein Portfolio zu schreiben, oder Sie können einfach vorwärts gehen. Der nächste potenzielle Arbeitgeber wird wahrscheinlich nicht nach einem Codebeispiel fragen.

#3
+1
Chris E
2016-09-30 20:15:34 UTC
view on stackexchange narkive permalink

Genau wie Fotografen und Künstler Portfolios haben, sollten auch Softwareentwickler. Sie können alles eingeben, was Sie sich vorstellen können, um Ihre Fähigkeiten unter Beweis zu stellen. Der Vorteil eines seriösen Portfolios besteht darin, dass Sie eine funktionierende Anwendung erstellen, die komplexer sein kann als eine Stichprobe. Sie können darauf aufbauen und wenn Sie auf neue Technologien stoßen, können Sie diese auch ergänzen. Der Unterschied zwischen einem Portfolio und einem Beispiel besteht darin, dass ein Beispiel nur Code ist, den Sie senden. Ihr Portfolio ist das abgerundete Schaufenster für Ihre Arbeit, nicht nur hier und da Code.

Lernen Sie zunächst Git und richten Sie sich ein Github-Repository ein . Sobald Sie das getan haben, erstellen Sie einfach eine Art Projekt, das nicht wirklich existiert, und beginnen Sie mit dem Codieren. In einigen Beispielprojekten von Microsoft finden Sie einige Ideen. Dann teilen Sie dieses Portfolio mit jedem, den Sie haben möchten. Es wird wahrscheinlich auch ohnehin bei Google zu finden sein.

Zweitens: Richten Sie einen Host ein, auf dem Ihre Anwendung tatsächlich ausgeführt wird. Lassen Sie die Leute sehen, dass Sie Code können und Ihr Code tatsächlich funktioniert

Ein Schlüssel zu einem erfolgreichen Portfolio ist die Semi-Permanenz und der Aufbau darauf. Lassen Sie potenzielle Arbeitgeber viel von dem sehen, was Sie tun können, anstatt nur einen Code, den Sie ihnen senden.

Nehmen Sie auch an Open Source teil. Das kann ich auch nicht genug vorschlagen. Es sieht in Ihrem Lebenslauf gut aus, gibt Ihnen Code, auf den Sie verweisen können, und hilft Ihnen dabei, Ihre Fähigkeiten zu verbessern.

Jeff Atwood (einer der Gründer von Stack Exchange) hat es gut gesagt:

[ein Portfolio] Teil der Stellenbeschreibung für a Grafikdesigner, aber warum sollte diese Regel nicht auch für Softwareentwickler gelten? ... Jeder kann einen Lebenslauf-Text zusammenstellen, der voller durchsetzungsfähiger Verben und ausgefallener Schlüsselwörter ist. Bla bla Unternehmen bla bla strategisch bla bla Architekt bla bla. Die Vorteile von "Zeigen, nicht erzählen" sind viel überzeugender.

Ich denke, das OP fragt, was ein "gutes" Codebeispiel ist und wonach die Arbeitgeber suchen. Anstatt wie man den Code liefert.
Das versuche ich zu vermitteln. Danke, dass du mich wissen lässt, dass ich es nicht getan habe. Ich werde bearbeiten, um zu klären.
Es gibt einen Unterschied zwischen Künstlern und Programmierern. Wenn ich professionelle Fotos gemacht habe, wurde ich vom Fotografen gefragt, ob er die Fotos zu Demonstrationszwecken verwenden kann. Ein Programmierer, der fragt, ob er Codefragmente, viel weniger aussagekräftige Projekte, außerhalb des Unternehmens freigeben kann? Das würde selten fliegen. Die anderen Optionen, die Sie präsentieren, erfordern einen großen Zeitaufwand. Wenn ich mindestens 40 Stunden pro Woche arbeite, möchte ich nicht mehr nach Hause gehen und an einem Computer sitzen. Ich habe Freunde und Familie, mit denen ich Zeit verbringen kann, zusammen mit nicht programmierenden Hobbys.
Karriereentwicklung und Steigerung der Beschäftigungsfähigkeit sind kein Hobby. Und nirgends habe ich vorgeschlagen, sinnvolle Projekte außerhalb des Unternehmens zu teilen. Ganz im Gegenteil.
@ChristopherEstep Sie haben vorgeschlagen, ein GitHub-Repository einzurichten und an Open Source teilzunehmen. Nachdem ich mehr als 40 Stunden pro Woche neue Tools und Technologien gelernt und proprietären Code geschrieben habe, sollte ich nicht mehr nach Hause gehen und noch mehr Zeit vor meinem Computer verbringen müssen, um potenziellen Arbeitgebern zu demonstrieren, dass ich Code schreiben kann, um dies zu tun Such dir einen Job.
@ChristopherEstep Ich habe einen Link zu einem Github-Repo bereitgestellt, über den sie auf den Code zugegriffen haben. Die Daten (JSON) stammten von einer öffentlich verfügbaren API. Open Source Option ist definitiv etwas, das ich in Betracht ziehen kann.
Ja, @ThomasOwens,, das hast du schon gesagt. Ich verstehe. Sie möchten die Arbeit bei der Arbeit lassen. Du bist auch nicht allein, da bin ich mir sicher. Aber (wie ich in meiner Antwort verlinkt habe), gibt es angesehene Experten, die Portfolios als wesentlich ansehen. Suchen Sie im "Programmierer-Portfolio" nach weiteren Beispielen. Ich bin hier kein Ausreißer mit dieser Meinung.
Ich stimme nicht mit den Experten oder Unternehmen überein, die von Ihnen ein Portfolio erwarten. Die Notwendigkeit eines Portfolios für Programmierer aufrechtzuerhalten, ist ein Nachteil für den Beruf.
Ich denke, das ist eine sehr gute Antwort. Bereiche wie Data Science sind äußerst wettbewerbsfähig. Jeder hat einen MS oder PhD, aber ein solides Portfolio unterscheidet Sie wirklich. Außerdem, @Thomas Owens, würde ich argumentieren, dass Portfolios, insbesondere Open-Source-Projekte, Bereiche wie Data Science vorantreiben.
Wenn Sie sich für ein Open Source-Projekt entscheiden, mag der potenzielle Arbeitgeber Ihre Wahl möglicherweise nicht und möchte möglicherweise nicht durch das Projekt waten, um die Teile zu finden, an denen Sie gearbeitet haben. Die Arbeit an einem kann jedoch ein guter praktischer Weg sein, um Ihre Fähigkeiten zu verbessern, insbesondere wenn Sie mit anderen Mitwirkenden zusammenarbeiten und nicht nur mit einem Soloprojekt.
Das Problem dabei ist, dass Ihr Arbeitgeber wahrscheinlich den Code besitzt, den Sie außerhalb der Geschäftszeiten erstellen, es sei denn, er hat nichts mit Ihrem Tagesjob zu tun
@Pepone wahrscheinlich? Nicht in den USA. Nur sehr wenige Menschen haben Mietverträge. Niemand schlägt vor, dass er seine Arbeit bei seinem Arbeitgeber erledigt. In 30 Jahren war es mir immer nur verboten, Geheimnisse zu teilen oder an Wettbewerben teilzunehmen. Ich hatte noch nie einen Arbeitgeber, der mir vorschlug, Arbeiten zu besitzen, die in meiner Freizeit produziert wurden.
@ChristopherEstep Das US-Arbeitsrecht leitet sich vom Common Law ab, auch bekannt als Masters and Servants Act. Überprüfen Sie Ihren Vertrag.
@ThomasOwens Es sei denn, das Projekt war Open Source und Ihr Name steht darauf. Meine letzte Firma hatte zahlreiche Open-Source-Projekte auf Git und wenn Sie dazu beigetragen haben, sehe ich nicht, wie Sie es nicht öffentlich bekannt geben können.
@Dan Mein Punkt ist, dass es sich um eine relativ kleine Anzahl von Personen und eine so kleine Menge an Code handelt. Die meiste Software ist nicht Open Source und einige Unternehmen gabeln und öffnen nicht Open Source.
@ChristopherEstep Ich musste mehrmals gegen Verträge kämpfen, um Klauseln zu entfernen, die alles, was ich tat, insbesondere zu jedem Zeitpunkt (einmal war es auch nach Beendigung des Arbeitsverhältnisses zeitlich unbegrenzt), auf jedem Gerät (unabhängig davon, wem das Gerät gehört) entfernen konnten Gerät) im Eigentum des Arbeitgebers. Das war in Texas. Ich habe es immer rausgebracht, aber ich weiß, dass einige Mitarbeiter nicht gefragt haben. Ich weiß nicht, ob es durchsetzbar wäre, aber das war in Verträgen.
@ChristopherEstep "Es gibt angesehene Experten, die Portfolios als wesentlich ansehen." Jeff Atwood, den Sie als "Experten" verbunden haben, ist hier in welchem ​​Sinne ein Experte? Ein Experte bei der Einstellung von Leuten? Ein Experte, der Leuten in seinem Blog sagt, wie sie Dinge tun sollen?
#4
  0
Chris G
2016-09-30 20:38:10 UTC
view on stackexchange narkive permalink

Ich würde um genaueres Feedback bitten. Was ist mit Ihrem Code, der ihn "junior" erscheinen lässt?

Möglicherweise möchten Sie ihn auch auf der Code Review-Website von SE veröffentlichen, um zusätzliches Feedback zu erhalten.

Viele Entwickler schreiben keinen Code, den sie besitzen, oder der Code, den sie besitzen, ist für kleine persönliche Projekte / Bastelarbeiten gedacht und nicht von professioneller Qualität.

Sie sollten entweder Feedback zu Ihrem aktuellen Code einholen und ihn verbessern von höherer professioneller Qualität oder erklären Sie, dass Sie kein Codebeispiel bereitstellen können, aber bereit wären, eine Codierungsübung oder eine Whiteboard-Sitzung mit ihnen durchzuführen.

Ich denke, es scheint eine gute Bitte zu sein, den Arbeitgeber um eine Kodierungsübung zu bitten.
#5
  0
Stephan Branczyk
2016-10-01 04:49:34 UTC
view on stackexchange narkive permalink

Ich nehme an, Sie haben von dem Bärenwitz gehört.

enter image description here

Zum Glück müssen Sie keinen schreiben Super komplexe Bewerbung oder perfekte Bewerbung. Sie müssen nur ein Codebeispiel schreiben, das genauso gut oder besser ist als das, was Ihre anderen konkurrierenden Jobjäger für denselben Job eingereicht haben.

Und diese konkurrierenden Jobjäger haben die gleichen Einschränkungen. Niemand kann Code von der Arbeit einreichen. Und professionelle Entwickler mit guten Open-Source-Nebenprojekten sind entweder sehr selten oder für die meisten Softwareentwicklungsjobs einfach zu teuer.

Wenn Sie also das, was der Interviewer gesagt hat, zum Nennwert nehmen, bedeutet dies, dass Sie Ihr vorhandenes Codebeispiel möglicherweise leicht verbessern möchten.

Wenn Sie nicht wissen, was Sie hinzufügen sollen, sollten Sie einige Ihrer Entwicklerfreunde im selben Feld fragen und versuchen, einige dieser Verbesserungen einzeln hinzuzufügen. Auch hier braucht es nicht viel, denn fast alles, was Sie konstruktiv hinzufügen, unterscheidet Sie drastisch von Ihrer Konkurrenz.

Und letztendlich ist die Jobsuche auch ein Spiel mit Zahlen. Nehmen Sie also keine einzelne Ablehnung zu ernst. Bewerben Sie sich an vielen Stellen. Arbeitgeber verwenden unterschiedliche Methoden zur Bewertung von Bewerbern.



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 3.0-Lizenz, unter der er vertrieben wird.
Loading...