Muss man bei Bewerbungsgesprächen oft Probleme lösen?



  • Ich bin zugegeben relativ schwach darin, ad hoc Algorithmen auf Papier auszudenken. Wenn ich eine IDE habe, in der ich erste Ansätze einfach mal durchlaufen lassen kann und etwas Zeit habe, um darüber nachzudenken, dann kann ich in der Regel schon ganze saubere Lösungen zu gewissen, logischen Problemen finden.
    Wenn ich das aber auch einem Blatt Papier in einem Job-Interview unter Zeitdruck machen müsste, dann würde wahrscheinlich nicht all zu viel bei raus kommen.

    Sind solche Problemlösungsaufgaben üblich in Interviews? Es scheint im Internet viele Seiten zu geben, die einem helfen, sich auf solche Fragen vorzubereiten. Es sieht also so aus, als würde das schon öfter vorkommen. Wie sind da Eure Erfahrungen? Was habt ihr gemacht, um Euch da nicht zu blamieren?



  • Ja, ist üblich.

    Ich musste sogar erst 3 Probleme (je 30 min/Problem) auf so einer Online-Programmierseite lösen, bevor ich überhaupt zum Interview eingeladen wurde (habe vergessen, wie die hieß). Die Website hat dann auch automatisch Tests laufen lassen mit vielen Spezialfällen und auch mit großen Eingaben, sodass die Komplexität geschätzt wurde - bei manchen Problemen gab es O(nlgn)O(n \lg n)-Lösungen und wenn man es in O(n2)O(n^2) gelöst hat, gab es Abzug - ich hatte, weiß ich noch, in einem Problem nur eine Average-Komplexität von nlgnn \lg n, aber bei komplett identischen Eingabedaten hatte ich n2n^2, das wäre in meinem Code mit einem if vermeidbar gewesen... Naja, was solls. Dann im eigentlichen Interview musste ich ein char-Array mit "die sonne scheint" in "scheint sonne die" (also Wörter rückwärts) umwandeln, wobei aber irgendwelche String-Funktionen verboten waren - also nur mit Schleifen lösen. Es gab nur eine (recht kleine) Tafel - gelöst habe ich es, aber man kommt ins Schwitzen!

    Inzwischen bin ich woanders und habe selbst schon mal Bewerbern Aufgaben gestellt. Ich stelle fest: man kann auch die allereinfachsten Dinge fragen und bekommt schell einen Eindruck. Man erlebt Überraschungen wie dass Leute mit "Expertenkenntnisse in SQL" nicht wissen, wie man ein SELECT schreibt... ARGH!



  • Erstmal danke für dein Input!

    Scheint als würde es also durchaus Sinn machen, sich auf sowas vorzubereiten. Ich komme bei den Programmier-Tasks, die ich so im täglichen Alltag mache, kaum mit solchen Problemstellungen hin Kontakt, daher bin ich was das angeht auch sehr eingerostet. Etwas demotivierend, eigentlich sollte man sowas als Software-Entwickler aus dem Effeff können, da es an sich ja eigentlich nur um die Fähigkeit logisch zu denkend geht.
    Wenn da jemand zufällig etwas hat, wo man es besonders gut lernen kann, dann gerne her damit. Ansonsten findet man natürlich auch genug, wenn man einfach googelt.

    Tatsächlich hatte ich damals bei meinem Studium vorher auch so ein Interview, die Fragen in der Richtung waren aber wesentlich banaler. Da ging es um die Türme von Hanoi - gegeben war, dass für x Scheiben der Algorithmus y Schritte braucht, gefragt wurde wie viel es denn für x+1 Scheiben sind, was ja relativ banal ist, besonders weil vorher beschrieben wurde, wie der Algorithmus arbeitet. Wenn ich stattdessen den Algorithmus selber hätte implementieren müssen, wäre ich wohl gescheitert.

    Noch eine Frage direkt an dich, wob, da du ja selber Interviews zu führen scheinst(oder mal geführt hast): Worauf achtest du denn besonders, um herauszufinden, ob jemand "gut" ist?



  • Bei uns geht es beim Programmieren nicht um "gut", sondern eher darum, ein bisschen zum überprüfen, ob jemand überhaupt damit klarkommt bzw. ob es stimmt, was in der Bewerbung steht (sowas wie "C++: sehr gute Kenntnisse, 5 Jahre Berufserfahrung" kann auch heißen, "ein bisschen mit C mit cout herumgedoktort und noch nie was von unique_ptr geschweige denn von move-Semantik gehört"). Wir machen Datenanalyse, da ist Programmieren nur ein notwendiges Übel (und in der Regel nicht in C++, daher ist mir auch egal, welche Sprache jemand kennt, es sollten nur zumindest solide Grundkenntnisse vorhanden sein). Wir hatten auch schon einen Kandidaten, der mitten im Gespräch, weil er eine einfache Aufgabe nicht sofort lösen konnte, auf einmal meinte, dass er den Job nicht mehr will und gegangen ist, ohne sich zu verabschieden. Also, wir machen das auch, um die Leute besser einschätzen zu können. Aber allgemein arbeite ich in einer sehr sehr kleinen Firma, mein Chef macht die Interviews selbst, aber ich gucke dann so ein bisschen nach den technischen Kenntnissen.

    Vielleicht können ein paar andere ja auch mal ihre Erfahrungen beschreiben. Würde mich auch interessieren!



  • In meiner Abteilung werden keine Tests gemacht (in anderen einfache Tests). Bei dem Vorstellungsgespräch kann man aber schon oft ein gewisses Gefühl dafür bekommen, ob´s jemand drauf hat oder nicht.
    Im übrigen muss jemand auch nicht unbedingt "gut" sein, es reicht schon, wenn er "nicht schlecht" ist und sich nicht überschätzt. Es geht eher darum, die wirklich schlechten rauszufiltern, und die übrigen halbwegs einzuschätzen, damit man sie sinnvoll einsetzen kann. Gute Leute haben wir schon genug. Es mangelt eher an "Fachkräften".



  • Hm, ich hatte mal ein Gespräch in dem ich erklären sollte wie ich irgendein Problem mit Zusatzzahlen in C implementieren würde. Das Problem war recht trivial, und das hatte sich erledigt als ich mit Randbetrachtungen angefangen habe. Da ging es nur darum festzustellen ob man wirklich eine ganz grobe Idee hat.

    Bei meinem aktuellen Job gingen die Fachfragen eher in die Richtung von allgemeinen numerischen Verfahren, wobei die im tatsächlichen Job nicht das Hauptgebiet sind. War ich aber drauf vorbereitet, weil numerische Verfahren in der Ausschreibung standen.

    Ich habe, wenn ich auf der anderen Seite sitze, immer ein paar sehr einfache anwendungsbezogene Fragen vorbereitet, die ich Stelle, wenn ich mir im Gesprächsverlauf unsicher bin, was die entsprechenden Qualifikationen betrifft.

    P. S. Fast vergessen, für ein Studentenjob musste ich tatsächlich mal was live vorprogrammieren. Das ist auch glorreich schief gegangen. Den Job habe ich trotzdem bekommen und viel dabei gelernt.



  • Erstmal Danke an alle für den Input, alles sehr interessant und hilfreich!

    Ich nehme jetzt mal mit, dass es durchaus üblich und sehr zu erwarten ist, dass man in einem Vorstellungsgespräch konkrete Aufgaben lösen muss. Auch wenn es manchmal nicht der Fall ist, so wie Mechanics berichtet hat, ist es also grundsätzlich sinnvoll, dass man damit umgehen kann.

    Interessant fand ich, dass einige wohl die Aufgaben auch nicht mit links bewältigt haben. Lag das am fehlenden Wissen oder eher an der stressigen Situation?
    Ich habe auch auf Youtube schon einige Videos geschaut, in dem einige sehr Schwierigkeiten mit solchen "Whiteboard interviews" hatten. Also Interviews, in den man live vor-coden muss während eine andere Person kritisch zuschaut. Komisch, denn einige von den Youtubern machen eigentlich einen sehr kompetenten Eindruck.



  • @newmember sagte in Muss man bei Bewerbungsgesprächen oft Probleme lösen?:

    Interessant fand ich, dass einige wohl die Aufgaben auch nicht mit links bewältigt haben. Lag das am fehlenden Wissen oder eher an der stressigen Situation?

    Der Stress der Situation gehört sicherlich auch dazu, aber wenn man das gestellte Problem (oder ein ähnliches) bereits kennt, hat man es deutlich leichter. Es gibt inzwischen recht viele Webseiten die "Programming Challenges" anbieten (oft auch kostenlos für Entwickler). Und wie wob erwähnt hat, werden manche davon sogar von den Unternehmen verwendet. Ich hatte vor ein 1-2 Jahren Hackerrank ausprobiert und dort ein Großteil der Algorithm Challenges gemacht.


  • Gesperrt

    Dieser Beitrag wurde gelöscht!

Anmelden zum Antworten