
Finden Sie es nicht seltsam, dass, wenn Sie einen Jobwechsel in ErwĂ€gung ziehen und ein VorstellungsgesprĂ€ch ansteht, Sie zuerst denken: âIch muss mich auf das Interview vorbereiten.â Aufgaben auf HackerRank durchgehen, "Crack the Coding Interview" lesen, sich einprĂ€gen, wie ein ArrayList funktioniert und wie sie sich von einer LinkedList unterscheidet. Ach ja, und sie könnten auch nach Sortierungen fragen; es wĂ€re eindeutig unprofessionell zu sagen, dass Quick Sort wahrscheinlich die beste Wahl sein wird.
Aber warten Sie, Sie programmieren doch 8 Stunden am Tag, lösen interessante und anspruchsvolle Aufgaben und werden an Ihrem neuen Arbeitsplatz mehr oder weniger dasselbe tun. Dennoch ist es notwendig, sich auf das Interview zusĂ€tzlich vorzubereiten, nicht nur um tĂ€gliche FĂ€higkeiten zu verfeinern, sondern auch um etwas zu lernen, was Ihnen an Ihrem aktuellen Arbeitsplatz nicht nĂŒtzlich war und wahrscheinlich auch am nĂ€chsten nicht benötigt wird. Auf Ihre EinwĂ€nde, dass Computerwissenschaften in unserem Blut liegen und dass wir, selbst wenn wir mitten in der Nacht geweckt werden, im Halbschlaf in der Lage sind, den Breitensuche-Algorithmus auf ein Kopfkissen zu schreiben, werde ich sagen: Wenn ich in einen Zirkus gehen wĂŒrde und mein Haupttrick genau das wĂ€reâ dann wĂŒrde ich zustimmen. Man sollte diese FĂ€higkeit testen.
Aber warum sollten irrelevante FĂ€higkeiten fĂŒr die aktuelle Arbeit getestet werden? Nur weil das in Mode gekommen ist? Weil Google es so macht? Oder weil Ihr zukĂŒnftiger Teamleiter alle Sortiermethoden lernen musste, um das Interview zu bestehen, und jetzt glaubt, dass "jeder gute Programmierer die Implementierung zur Ermittlung von Palindromen in einem String auswendig wissen sollte."
Es ist zwar so, dass Sie nicht Google sind. Was sich Google leisten kann, ist fĂŒr normale Unternehmen nicht möglich. Google hat anhand der Daten seiner Mitarbeiter festgestellt, dass gerade Ingenieure mit olympischem Hintergrund gut fĂŒr bestimmte Aufgaben geeignet sind. Zudem können sie im Auswahlprozess das Risiko eingehen, dass sie möglicherweise einige gute Ingenieure nicht einstellen, weil diese nicht so leicht mathematische Probleme lösen können. Aber das ist fĂŒr sie kein groĂes Problem, denn es gibt viele, die bei Google arbeiten wollen; die Position wird schnell besetzt.
Schauen wir jetzt aus dem Fenster: Wenn vor Ihrem BĂŒro noch keine Ingenieure, die fĂŒr Sie arbeiten möchten, ein Lager aufgeschlagen haben und Ihre Entwickler eher nach einer weiteren Spring-Annotation auf Stack Overflow suchen als nach den Feinheiten von Ranking-Algorithmen, dann sollten Sie ernsthaft ĂŒberlegen, ob es sinnvoll ist, Google nachzuahmen.
Was tun, wenn Google diesmal nicht geholfen hat und keine Antwort gegeben hat? ĂberprĂŒfen Sie genau das, was der Entwickler bei der Arbeit tun wird. Was schĂ€tzen Sie an Entwicklern?
Definieren Sie die Kriterien, wen Sie einstellen möchten, und erstellen Sie Tests, die genau diese FĂ€higkeiten ĂŒberprĂŒfen.
ThoughtWorks
Was hat ThoughtWorks damit zu tun? Genau hier habe ich ein Beispiel fĂŒr ein vorbildliches VorstellungsgesprĂ€ch gefunden. Wer sind die ThoughtWorks? Kurz gesagt, es handelt sich um ein High-End-Beratungsunternehmen mit BĂŒros weltweit, von China und Singapur bis hin zu den amerikanischen Kontinenten, das seit etwa 25 Jahren in der Softwareentwicklung konsultiert, mit einer eigenen Wissenschaftsabteilung, die von Martin Fowler geleitet wird. Wenn Sie eine Liste der 10 BĂŒcher suchen, die jeder Software Engineer gelesen haben muss, werden wohl 2-3 davon von den Leuten von ThoughtWorks geschrieben, wie zum Beispiel "Refactoring" von Martin Fowler und "Building Microservices: Designing Fine-Grained Systems" von Sam Newman oder "Building Evolutionary Architectures".
von Patrick Kua, Rebecca Parsons, Neal Ford.
Das GeschĂ€ftsmodell des Unternehmens basiert auf der Erbringung recht kostspieliger Dienstleistungen, aber der Kunde bezahlt fĂŒr die phĂ€nomenale QualitĂ€t, die sich aus Fachkenntnissen, internen Standards und natĂŒrlich Menschen zusammensetzt. Daher ist es hier von entscheidender Bedeutung, die richtigen Leute einzustellen.
Welche Menschen sind die richtigen? NatĂŒrlich hat jeder seine eigenen. ThoughtWorks hat festgestellt, dass fĂŒr ihr GeschĂ€ftsmodell die wichtigsten Kriterien fĂŒr Entwickler sind:
- Die FĂ€higkeit zur Paarentwicklung. Es ist die FĂ€higkeit, nicht die Erfahrung oder das Können. Niemand erwartet, dass Menschen kommen, die seit fĂŒnf Jahren Pair Programming praktizieren. Aber offen fĂŒr die Meinungen anderer zu sein und zuzuhören â das ist eine notwendige FĂ€higkeit.
- Die FĂ€higkeit, Tests zu schreiben, idealerweise TDD zu praktizieren.
- SOLID und OOP zu verstehen und anwenden zu können.
- Seine Meinung zu prÀsentieren. Ein Berater muss mit den Entwicklern des Auftraggebers und anderen Beratern zusammenarbeiten. Es bringt nicht viel, wenn jemand etwas gut kann, aber völlig unfÀhig ist, dies den anderen Teammitgliedern zu vermitteln.
Jetzt ist es wichtig, genau diese FÀhigkeiten bei den Kandidaten zu bewerten. Und hier möchte ich von meiner Erfahrung mit dem VorstellungsgesprÀch bei ThoughtWorks berichten. Ich möchte gleich sagen, dass ich in Singapur war und es bestanden habe, aber der Rekrutierungsprozess ist einheitlich und wird von Land zu Land nicht stark abweichen.
Phase 0. HR
Wie so oft gab es ein 20-minĂŒtiges GesprĂ€ch mit der Personalabteilung. Dabei möchte ich nicht verweilen, nur so viel: Ich habe noch nie einen HR-Mitarbeiter getroffen, der 15 Minuten lang ĂŒber die Entwicklungskultur im Unternehmen sprechen konnte, warum sie TDD anwenden und warum Pair Programming. Normalerweise langweilen sich HRs bei dieser Frage und erzĂ€hlen, dass ihr Prozess ganz normal ist: Entwickler entwickeln, Tester testen, Manager treiben das Ganze voran.
Schritt 1. Wie gut bist du in OOP, TDD?
1,5 Stunden vor Beginn des Interviews erhielt ich die Aufgabe, einen Mars Rover Simulator zu erstellen.
Aufgabe Mars RoverEin Team von robotischen Rovern soll von NASA auf einem Plateau auf dem Mars landen. Dieses Plateau, das merkwĂŒrdigerweise rechteckig ist, muss von den Rovern navigiert werden, damit ihre Onboard-Kameras eine vollstĂ€ndige Sicht auf die umliegende Landschaft erhalten, um sie zur Erde zu senden. Die Position und Lage eines Rovers wird durch eine Kombination aus x- und y-Koordinaten sowie einem Buchstaben dargestellt, der einen der vier Himmelsrichtungen reprĂ€sentiert. Das Plateau ist in ein Raster unterteilt, um die Navigation zu erleichtern. Eine Beispielposition könnte 0, 0, N sein, was bedeutet, dass der Rover in der unteren linken Ecke steht und nach Norden schaut. Um einen Rover zu steuern, sendet NASA eine einfache Zeichenkette. Die möglichen Buchstaben sind 'L', 'R' und 'M'. 'L' und 'R' lassen den Rover jeweils um 90 Grad nach links oder rechts drehen, ohne sich von seinem aktuellen Standort zu bewegen. 'M' bedeutet, dass er sich einen Rasterpunkt vorwĂ€rts bewegt und die gleiche Richtung beibehĂ€lt.
Nehmen Sie an, dass das Quadrat direkt nördlich von (x, y) (x, y+1) ist.
EINGABE:
Die erste Eingabezeile sind die oberen rechten Koordinaten des Plateaus, die unteren linken Koordinaten werden auf 0,0 angenommen.
Der restliche Input enthÀlt Informationen zu den bereitgestellten Rovern. Jeder Rover hat zwei Eingabezeilen. Die erste Zeile gibt die Position des Rovers an, und die zweite Zeile ist eine Reihe von Anweisungen, die dem Rover sagen, wie er das Plateau erkunden soll. Die Position besteht aus zwei Ganzzahlen und einem Buchstaben, die durch Leerzeichen getrennt sind, entsprechend den x- und y-Koordinaten sowie der Ausrichtung des Rovers.
Jeder Rover wird nacheinander fertiggestellt, was bedeutet, dass der zweite Rover sich nicht bewegt, bis der erste Rover mit der Bewegung fertig ist.
AUSGABE:
Die Ausgabe fĂŒr jeden Rover sollte seine finalen Koordinaten und die Himmelsrichtung sein.
ANMERKUNGEN:
Setzen Sie einfach die oben genannten Anforderungen um und beweisen Sie, dass ein Staubsauger funktioniert, indem Sie Unit-Tests dafĂŒr schreiben.
Die Erstellung irgendeiner Form von BenutzeroberflÀche ist ausgeschlossen.
Es wird bevorzugt, das Problem nach einem TDD-Ansatz (Testgetriebene Entwicklung) zu lösen.
In der kurzen zur VerfĂŒgung stehenden Zeit sind wir mehr an QualitĂ€t als an VollstĂ€ndigkeit interessiert.
*Ich kann die Aufgabe, die mir zugesandt wurde, nicht hochladen; es handelt sich um eine alte Aufgabe, die vor mehreren Jahren gestellt wurde. Aber glauben Sie mir, prinzipiell ist alles gleich geblieben.
Besonders möchte ich auf die Bewertungskriterien hinweisen. Wie oft sind Sie bereits in die Situation gekommen, dass fĂŒr den Kandidaten wichtige Aspekte bei der ĂberprĂŒfung völlig unwichtig sind und umgekehrt? Nicht alle denken gleich wie Sie, aber viele können Ihre Werte annehmen und diesen folgen, wenn sie klar formuliert sind. Aus den Bewertungskriterien geht bereits hervor, dass die wichtigsten FĂ€higkeiten in dieser Phase sind
- TDD;
- FĂ€higkeit, OOP zu nutzen und wartbaren Code zu schreiben;
- FĂ€higkeiten im Pair Programming
Ich wurde gewarnt, diese 1,5 Stunden damit zu verbringen, darĂŒber nachzudenken, wie ich die Aufgabe angehen werde, statt Code zu schreiben. Den Code werden wir gemeinsam schreiben.
Als wir uns telefonisch austauschten, erzÀhlten die Jungs kurz, wer sie sind und was sie machen, und schlugen vor, mit der Entwicklung zu beginnen.
WĂ€hrend des gesamten Interviews hatte ich nie das GefĂŒhl, dass ich mich in einem BewerbungsgesprĂ€ch befinde. Es fĂŒhlte sich an, als wĂŒrde man im Team Code entwickeln. Wenn man irgendwo feststeckt, helfen sie einem, geben RatschlĂ€ge, diskutieren und streiten sogar darĂŒber, wie man es am besten machen kann. In dem Interview habe ich vergessen, wie man in JUnit 5 ĂŒberprĂŒft, dass eine Methode eine Exception wirft â sie schlugen vor, das Testen fortzusetzen, wĂ€hrend einer von ihnen googelte, wie man das macht.
Nur einige Stunden nach dem Interview erhielt ich konstruktives Feedback â was gut war und was nicht. In meinem Fall wurde ich fĂŒr die Verwendung von Sealed Klassen als Alternative zu null gelobt; dafĂŒr, dass ich vor dem Schreiben von Code einen Pseudocode erstellt habe, um zu zeigen, wie ich den Rover steuern möchte, und somit eine Skizze der Klassen erhalten habe, zumindest derjenigen, die im API des Roboters verwendet werden.
Phase 2. ErzÀhl uns
Eine Woche vor dem Interview wurde ich gebeten, eine PrÀsentation zu einem beliebigen Thema, das mich interessiert, vorzubereiten. Das Format ist einfach und vertraut: 15 Minuten PrÀsentation, 15 Minuten Fragen und Antworten.
Ich wĂ€hlte Clean Architecture von Uncle Bob. Und wieder interviewten mich ein paar Personen. Das war meine erste Erfahrung mit einer PrĂ€sentation auf Englisch, und ich denke, ich hĂ€tte in einer stressigen Situation nicht standgehalten. Aber dennoch hatte ich nie das GefĂŒhl, dass es ein VorstellungsgesprĂ€ch ist. Es war wie gewohnt â ich erzĂ€hle, sie hören aufmerksam zu. Sogar die traditionelle Frage-Antwort-Runde fĂŒhlte sich nicht wie ein Interview an; man sah, dass die Fragen nicht gestellt wurden, um mich âunter Druck zu setzenâ, sondern weil sie wirklich an meiner PrĂ€sentation interessiert waren.
Ein paar Stunden nach dem Interview erhielt ich Feedback â die PrĂ€sentation war sehr hilfreich und sie hatten aufrichtig Freude am Zuhören.
Phase 3. ProduktionsqualitÀt Code
Nachdem ich gewarnt wurde, dass dies die letzte Phase der technischen Interviews ist, wurde ich gebeten, den Code zu Hause in einen produktionsreifen Zustand zu bringen, bevor ich ihn zur ĂberprĂŒfung einreiche und Interviews ansetze, bei denen die Anforderungen an die Aufgabe geĂ€ndert werden und der Code Modifikationen benötigt. Um vorzugreifen, kann ich sagen, dass die Code-ĂberprĂŒfung blind erfolgt; die PrĂŒfer kennen weder die Position, fĂŒr die der Kandidat sich bewirbt, noch sehen sie seinen Lebenslauf oder sogar seinen Namen.
Ein GesprĂ€ch, und wieder sind da ein paar Leute auf der anderen Seite des Bildschirms. Alles wie beim ersten Interview: Wichtig ist, nicht das TDD zu vergessen und zu erklĂ€ren, was man tut und warum. Wenn Sie TDD bisher nicht praktiziert haben, empfehle ich Ihnen, sofort damit zu beginnen, nicht weil es in Firmen notwendig ist, sondern weil es Ihr Leben erheblich vereinfacht und den Stresslevel senkt, wenn Sie so möchten. Erinnern Sie sich, wie Sie frĂŒher verzweifelt nach dem Debugger gesucht haben, um einen Fehler zu finden, der nur im Browser reproduzierbar ist, weil Sie ihn mit Tests nicht reproduzieren konnten? Stellen Sie sich nun vor, Sie mĂŒssten einen solchen Fehler wĂ€hrend des Interviews finden â da sind ein paar graue Haare fĂŒr Sie garantiert. Was bieten uns TDD? Sie haben den Code geĂ€ndert und stellen unerwartet fest, dass jetzt die Tests rot sind, aber Sie können beim ersten Mal nicht verstehen, worin der Fehler liegt? Okay, wir sagen den Interviewern âUpsâ, drĂŒcken Ctrl-Z und beginnen, kleine Schritte nach vorne zu machen. Und ja, die FĂ€higkeit, mit TDD zu entwickeln, ist eine FĂ€higkeit, die Sie sich aneignen mĂŒssen. Es erfordert, dass Sie darauf hinarbeiten, Ihr Ziel zu erreichen, sodass Ihre Tests permanent grĂŒn sind und nicht den halben Tag rot bleiben, weil âSie eine groĂe Refaktorisierung habenâ. Das ist genau so eine FĂ€higkeit wie das Schreiben von wartbarem oder leistungsfĂ€higem Code.
Wie gut Ihr Code Ă€nderbar ist, hĂ€ngt davon ab, welches Design Sie ursprĂŒnglich implementiert haben, wie einfach es ist und wie gut Ihre Tests sind.
Nach dem Interview erhielt ich innerhalb weniger Stunden Feedback. In diesem Moment wurde mir klar, dass ich praktisch bestanden hatte und es nur noch wenig bis zum "Treffen mit Fowler" war.
Schritt 4. Finale. Ausreichend technische Fragen. Wir möchten wissen, wer Sie sind!
Ehrlich gesagt hat mich diese Fragestellung etwas verwirrt. Wie kann man innerhalb einer Stunde herausfinden, was fĂŒr ein Mensch ich bin? Und wie kann man das erst recht verstehen, wenn ich in einer Sprache spreche, die nicht meine Muttersprache ist, und, um ehrlich zu sein, ziemlich schlecht und holprig? Bei den vorherigen Interviews fiel es mir persönlich leichter, zu erzĂ€hlen, als auf Fragen zu antworten, und das liegt alles am Akzent. Zumindest einer der Interviewer war Asiater â und deren Akzent ist, sagen wir mal, fĂŒr ein europĂ€isches Ohr etwas eigenartig. Daher habe ich beschlossen, einen proaktiven Ansatz zu wĂ€hlen â eine PrĂ€sentation ĂŒber mich vorzubereiten und zu Beginn des Interviews vorzuschlagen, mit dieser PrĂ€sentation ĂŒber mich zu sprechen. Wenn sie einverstanden sind, wird es zumindest weniger Fragen an mich geben, und wenn sie das Angebot ablehnen â na ja, drei Stunden meines Lebens, die ich fĂŒr die PrĂ€sentation aufgewendet habe, sind kein zu hoher Preis. Aber was sollte ich in die PrĂ€sentation schreiben? Meine Biografie â Ich wurde dort und dann geboren, bin zur Schule gegangen, habe die UniversitĂ€t abgeschlossen â wem interessiert das schon?
Wenn man ein wenig ĂŒber die Kultur von Thoughtworks googelt, findet man einen Artikel von Martin Fowler [https://martinfowler.com/bliki/ThreePillars.html], in dem die 3 SĂ€ulen beschrieben werden: Nachhaltiges GeschĂ€ft, Software-Exzellenz und soziale Gerechtigkeit.
Angenommen, ich habe die Software-Exzellenz bereits ĂŒberprĂŒft. Es bleibt, nachhaltiges GeschĂ€ft und soziale Gerechtigkeit zu zeigen.
Dabei habe ich mich entschieden, einen Schwerpunkt auf Letzteres zu legen.
ZunĂ€chst habe ich erklĂ€rt, warum ThoughtWorks â ich habe bereits im Studium den Blog von Martin Fowler gelesen, daher die Liebe zu Clean Code.
Projekte können auch aus verschiedenen Perspektiven prĂ€sentiert werden. Ich habe Software fĂŒr das Gesundheitswesen entwickelt, die das Leben der Patienten erleichtert hat und sogar, so hört man, ein Leben gerettet hat. Ich habe auch Software fĂŒr Banken entwickelt, was ebenfalls eine Art der Erleichterung fĂŒr die BĂŒrger ist. Besonders wenn 70 % der Bevölkerung eines Landes diese Bank nutzt. Es geht nicht um Sberbank und auch nicht um Russland.
Möchten Sie mehr ĂŒber mich erfahren? Okay. Mein Hobby ist Fotografie, ich halte seit etwa 10 Jahren eine Kamera in der Hand und habe Fotos, die ich nicht zu schĂ€men brauche. AuĂerdem habe ich eine Zeit lang einem Katzenheim geholfen: Ich habe Katzen fotografiert, die ein dauerhaftes Zuhause brauchen. Mit guten Fotos ist es viel einfacher, eine Katze zu vermitteln. Ich habe wahrscheinlich an die hundert Katzen fotografiert đ
Letztendlich waren 80 % meiner PrĂ€sentation mit Katzen gefĂŒllt.
Unmittelbar nach der PrĂ€sentation schrieb mir die Personalabteilung, dass sie die Ergebnisse des Interviews noch nicht kennt, aber das ganze BĂŒro von den Katzen beeindruckt ist.
SchlieĂlich erhielt ich das Feedback â ich konnte alle als Person zufriedenstellen.
Aber die Personalabteilung erklĂ€rte mir im abschlieĂenden GesprĂ€ch taktvoll, dass soziale Gerechtigkeit sehr wichtig und notwendig ist, aber nicht alle Projekte so sind. Und sie fragte, ob mich das nicht erschrecke. Insgesamt habe ich es mit der sozialen Gerechtigkeit ein wenig ĂŒbertrieben, passiert đ
Zusammenfassung
Insgesamt arbeite ich jetzt seit mehreren Monaten in Singapur bei Thoughtworks und sehe, dass viele Unternehmen hier die "besten Interviewpraktiken" von Google ĂŒbernehmen, indem sie Zettel und Whiteboards fĂŒr das Programmieren verwenden, obwohl weiterfĂŒhrende Kenntnisse ĂŒber Spring, Symfony, RubyOnRails (zu betonen) bei der Arbeit nicht erforderlich sind. Ingenieure nehmen sich eine Woche Urlaub vor dem Interview, um sich "vorzubereiten".
Bei Thoughtworks stehen neben angemessenen Anforderungen an die Kandidaten folgende Prinzipien im Vordergrund:
Freude am Interviewprozess. Dabei gilt das fĂŒr beide Seiten. TatsĂ€chlich, wenn Sie die besten Talente gewinnen möchten (und wer möchte das nicht?), ist ein VorstellungsgesprĂ€ch kein Markt fĂŒr Sklaven, sondern ein Treffen, bei dem sowohl Arbeitgeber als auch Kandidat einander beurteilen. Und wenn der Kandidat positive Emotionen mit dem Unternehmen verbindet, ist es durchaus wahrscheinlich, dass er sich fĂŒr genau dieses Unternehmen entscheidet.
Mehrere Interviewer zur Minderung von Vorurteilen. Bei Thoughtworks ist Pair Programming der De-Facto-Standard. Und wenn diese Praxis auch in anderen Bereichen anwendbar ist, versucht TW, dies umzusetzen. In jeder Phase des VorstellungsgesprĂ€chs fĂŒhren zwei Personen das Interview. So wird jede Person von mindestens 8 Personen bewertet, und TW bemĂŒht sich, Interviewer mit unterschiedlichem Hintergrund, aus verschiedenen Fachrichtungen (nicht nur Techniker) und Geschlechts auszuwĂ€hlen.
Letztendlich wird die Entscheidung ĂŒber die Einstellung auf der Grundlage der Meinungen von mindestens 8 Personen getroffen, und niemand hat das Recht auf ein Vetorecht.
Attributbasiertes Einstellen Anstatt Entscheidungen basierend auf dem âGefĂ€llt mir - GefĂ€llt mir nichtâ des Kandidaten zu treffen, wurde fĂŒr jede Rolle und jede Phase ein Formular erstellt, das die bewertbaren Attribute umfasst. Dabei wird empfohlen, nicht die Erfahrung in einer bestimmten FĂ€higkeit zu bewerten, sondern die FĂ€higkeit, diese anzuwenden. Wenn ein Kandidat also keine Gelegenheit hatte, bestimmte FĂ€higkeiten wie TDD anzuwenden, jedoch trotzdem versucht, diese zu nutzen und RatschlĂ€ge zur korrekten Anwendung befolgt, hat er alle Chancen, das Interview zu bestehen.
Bildungszertifikate sind nicht erforderlich TW verlangt von den Kandidaten keine verbindlichen Zertifikate oder einen Abschluss in Informatik. Es werden nur die FĂ€higkeiten bewertet.
Dies ist das erste Interview, fĂŒr das ich mich bei auslĂ€ndischen Unternehmen nicht vorbereiten musste. Nach jeder Phase fĂŒhlte ich mich nicht wie eine ausgepresste Zitrone, sondern im Gegenteil, ich war froh, dass ich die besten Praktiken anwenden kann, dass die Menschen auf der anderen Seite des Bildschirms dies schĂ€tzen und sie ebenfalls tĂ€glich anwenden.
Nach ein paar Monaten kann ich sagen, dass die Erwartungen vollstĂ€ndig erfĂŒllt wurden. Was unterscheidet ThoughtWorks von einem gewöhnlichen Unternehmen? In einem gewöhnlichen Unternehmen findet man gute Entwickler und angenehme Menschen, aber bei TW ist ihre Konzentration auĂergewöhnlich hoch.
Wenn Sie zu ThoughtWorks stoĂen möchten, können Sie die offenen Stellenangebote einsehen
Ich empfehle auch, einen Blick auf interessante Stellenangebote zu werfen:
Lead Software Engineer: , , ,
Senior Software Engineer: , , ,
Software Engineer: , ,
Senior Data Engineer:
Quality Analyst:
Infrastruktur: , ,
(Ich möchte ehrlich warnen, dass der Link ein Empfehlungslink ist. Wenn Sie bei TW erfolgreich sind, erhalte ich eine angenehme PrĂ€mie). WĂ€hlen Sie das BĂŒro, das Ihnen gefĂ€llt. Sie mĂŒssen sich nicht nur auf Europa beschrĂ€nken. SchlieĂlich ist es Teil der Politik von ThoughtWorks, dass Sie alle zwei Jahre in ein anderes Land umziehen können, wodurch sich die Kultur verbreitet und harmonisiert.
Scheuen Sie sich nicht, Fragen in den Kommentaren zu stellen oder mich zu bitten, Sie zu empfehlen.
Wenn das Thema interessant erscheint, schreibe ich darĂŒber, wie es sich bei ThoughtWorks arbeitet und wie das Leben in Singapur ist.
Quelle: habr.com
