Sie möchten also Ruby-Entwickler werden?



Einmal wurde ich gebeten, ein Ruby-Team für eine separate Codequest- Einheit zu erstellen, was bedeutete, dass ich Timlid werden würde (Hölle, ja !!!) und - was noch wichtiger ist - die Person werden würde, die von allen HR-Mitarbeitern angesprochen wird, um neue Entwickler zu rekrutieren (hmm ...). Offensichtlich waren die meisten dieser Entwickler Anfänger mit durchschnittlichem Wissen. Wenn ich mich jedem Interview nähere, vergesse ich nicht, dass ich selbst vor nicht allzu langer Zeit ein Anfänger war, der auf der anderen Seite des Tisches saß. Deshalb versuche ich, geduldig, freundlich zu sein und jedem Kandidaten ehrliches und nützliches Feedback zu geben, auch wenn wir uns für ihn entscheiden ungeeignet. Wie dem auch sei, ich habe einige Muster aufgedeckt - viele Entwickler, insbesondere Anfänger, machen Fehler, die nicht nur den Start erschweren, sondern die auch leicht vermieden werden können, wenn ihnen zuvor nur jemand davon erzählt hat.Ich selbst habe die meisten Fehler in meiner Zeit gemacht und wenn mich jemand davor gewarnt hätte, obwohl es vielleicht gewesen wäre, ich habe einfach nicht zugehört, hätte es mich wahrscheinlich vor vielen Enttäuschungen bewahrt - daher, um jemandem das Leben zu erleichtern, ich Ich möchte darauf hinweisen, dass ein Anfänger (oder sogar ein Mittelstufe) es besser machen kann, wenn er sich als Entwickler in der prestigeträchtigen Richtung der Softwareentwicklung effektiv entwickeln möchte.

GitHub


Jeder in der Community weiß, dass Ihr GitHub-Repository für den zukünftigen Arbeitgeber wirklich wichtig ist. Oder? Wenn Sie eine Open-Source-Bibliothek geschrieben haben, die von Menschen verwendet wird oder zu der sie beigetragen haben, kann dies ein ziemlich wertvoller Trumpf sein. Wenn Sie eine Bewerbung geschrieben haben, auch wenn es sich um eine Trainingsanwendung handelt, die einige der alltäglichen Probleme löst, die Sie haben, kann sie auch Ihre Fähigkeiten unter Beweis stellen. Wenn es sich bei allen Repositorys, die Sie anzeigen können, um halbfertige Aufgaben anderer Unternehmen handelt, die in den letzten neun Monaten noch nie berührt wurden, oder um Super-Basic-Rails, Ihre ersten „neuen Rails“, möchten Sie wirklich, dass wir dies sehen? Vielleicht bist du jetzt viel besser als vor 9 Monaten, verdammt, wahrscheinlich ist es das,aber wir wissen es nicht genau und wenn Sie uns einen Link zum Friedhof Ihres Codes schicken - nun, wie sie sagen, haben Sie nur eine Chance, einen guten ersten Eindruck zu hinterlassen, oder?

Und dies gilt nicht nur für Junioren - wenn Sie sich meine GitHub-Repositories angesehen hätten, hätten Sie überall genau die gleichen Dinge gefunden - Rekrutierungsaufträge aus den vergangenen Jahren oder einige aufgegebene Experimente mit Kernmaterial, die ich in diesem Prozess studiert habe, und usw. Ich verpflichte mich jeden Tag auf GitHub - aber diese Commits sind private Repositories, es gibt nichts zu sehen. Alles, was ich sagen möchte, ist normal, wenn auf Ihrem GitHub nichts erscheint, aber zeigen Sie es uns dann nicht.

Rubin


Wir alle lieben Rails! Und wir hassen sie auch. Und manchmal lieben und hassen wir gleichzeitig. Oder manchmal lieben wir ihn eines Tages und am nächsten Tag hassen und verfluchen wir ihn. Wir sind uns jedoch alle einig, dass Rails der De-facto-Standard beim Erstellen von Webanwendungen in Ruby ist - es erfordert viel Engagement und Mühe, in diesem Geschäft zu arbeiten und es nicht einmal kurz zu berühren (obwohl ich Leute getroffen habe, die behaupten, dies getan zu haben). Daher ist es nur natürlich, dass Sie Rails lernen, wenn Sie sich entscheiden, Ruby-Webentwickler zu werden. Und nicht gut, wenn Sie Rails lernen, ohne Ruby zu lernen!

Sie denken vielleicht, dass dies Ihren Fortschritt beschleunigen wird - am Ende ist das Einrichten einer grundlegenden Rails-Anwendung sehr einfach -, aber sehr bald werden Sie feststellen, dass Sie nicht wirklich verstehen, warum es funktioniert, Sie werden nur wissen, dass es funktioniert, aber Hier ist der erste einfache Fehler, und Sie befinden sich bereits im Stapelüberlauf und suchen jemanden, der ein ähnliches Problem hatte.

Stellen Sie sich das so vor - Sie werden nicht versuchen, ein Buch in einer Fremdsprache nur mit Google Translate und Zitaten aus Ihren Lieblingsfilmen zu schreiben, oder? Das Gleiche gilt für das Schreiben der Anwendung - Sie schreiben buchstäblich, was Sinn machen sollte, und je besser Sie die Sprache kennen, desto besser können Sie die beabsichtigte Bedeutung vermitteln und je effektiver Sie Sätze bilden - desto sinnvoller ist es. Wenn Sie nur Rails kennen, ist Ihr Wortschatz begrenzt. Und ich kann Ihnen versichern, dass Sie nicht für ein Unternehmen arbeiten möchten, das „Limited“ benötigt, denn sehr bald werden Sie zu einem Roboter, der nur die grundlegenden CRUD-Funktionen implementiert, was beispielsweise für zwei Monate aufregend ist, aber dann schnell gelangweilt, wie Zähne putzen, muss man es tun, muss man tun, aber es ist nicht wirklich das,Was möchtest du, richtig?

Ich beginne jedes Interview mit einer sehr einfachen und grundlegenden Frage:

- Was ist eine Klasse in Ruby, was ist ein Modul, was sind ihre Unterschiede und wofür sind sie?

Sie wären überrascht zu wissen, wie viele Menschen die Antwort auf diese Frage wirklich nicht kennen! Und das sind Leute, die Softwareentwickler werden wollen. Alle können in wenigen Minuten ein Blog mit Posts und Kommentaren erstellen - und das ist alles. Ich hatte einen Kandidaten für die Position eines mittleren Entwicklers, der behauptete, ein Jahr als Teamleiter an der Client-Anwendung gearbeitet zu haben - er weiß immer noch nicht, was das Ruby-Modul ist.

Sei nicht so. Lerne Ruby. Dafür gibt es viele Ressourcen. Eines der besten, das ich kenne, ist The Ruby Reference- Ruby online - ein Buch, das sich auf offizielle Dokumentation bezieht, aber bequemer und lesbarer ist. Lesen Sie es, lernen Sie es und spüren Sie, wie Ihre Professionalität wächst.

Schienen


Vergessen wir nicht, dass Rails ein Ruby-Framework zum Schreiben einer Webanwendung ist. Es besteht eine große Chance, dass es zu Ihrem alltäglichen Mainstream-Tool wird - nehmen Sie sich also die Hölle, um zu verstehen, wie es funktioniert! Rails Guides ist eine sehr zugängliche und ziemlich umfangreiche Dokumentation - nehmen Sie sich Zeit, um sie zu lesen und zu studieren.

Vieles von dem, was Sie lesen, wird für Sie zunächst nicht viel Sinn machen. Es gibt große Materialstücke, die Sie sehr selten, vielleicht sogar nie verwenden werden, aber das Wissen darüber gibt Ihnen viel mehr als sonst .


Der Unterricht ist großartig - jeder nutzt sie! Es reicht jedoch nicht aus, den Anweisungen einer anderen Person zu folgen. Denken Sie daran, dass der Zweck dieses Lernprogramms nicht darin besteht, ein funktionierendes Blog mit Beiträgen und Kommentaren zu erstellen, sondern Ihnen beizubringen, wie Sie Ihre eigene Anwendung erstellen. Und genau das sollten Sie so schnell wie möglich lernen. Erinnern Sie sich an all die Momente, in denen Sie dachten "Wenn ich nur eine Bewerbung dafür hätte!". Oder fragen Sie Ihre Freunde und Familie, welche Anwendung sie am meisten benötigen. Es kann alles sein - ein einfacher Aufgabenorganisator, eine Wunschliste oder eine andere Anwendung. Meine erste Bewerbung war eine Art Notizbuch für die Experimente meiner Frau in ihrem Labor (sie ist Wissenschaftlerin). Ich habe es nicht beendet, aber es spielt keine Rolle - in diesem Fall sprechen wir über einen Prozess, nicht über ein Ergebnis. Wenn Sie die Lektion machen,Sie beschäftigen sich mit künstlich geschaffenen Problemen und schlüsselfertigen Lösungen. Wenn Sie Ihr eigenes Ding erstellen, müssen Sie darüber nachdenken, wie Sie es bauen können. Sie müssen selbst eine Lösung für Ihre Probleme finden. Ich bin der festen Überzeugung, dass es keinen besseren Weg gibt, das Erstellen zu erlernen, als mit dem Erstellen zu beginnen, da Sie dies als Webentwickler tun werden. Die Überwindung von Schwierigkeiten gibt Ihnen ein großes Gefühl der Zufriedenheit, stärkt Ihr Selbstvertrauen und entzündet den Funken, der uns stundenlang über der Tastatur sitzen lässt, nur um das richtige JSON- oder Arbeitsregistrierungsformular zu sehen. Dies gibt Ihnen Erfahrung und etwas zu zeigen. Ihr Code muss nicht schön oder auffällig sein - Sie sind Anfänger, niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!Sie sind gezwungen zu überlegen, wie man es baut. Sie müssen selbst eine Lösung für Ihre Probleme finden. Ich bin der festen Überzeugung, dass es keinen besseren Weg gibt, das Erstellen zu erlernen, als mit dem Erstellen zu beginnen, da Sie dies als Webentwickler tun werden. Die Überwindung von Schwierigkeiten gibt Ihnen ein großes Gefühl der Zufriedenheit, stärkt Ihr Selbstvertrauen und entzündet den Funken, der uns stundenlang über der Tastatur sitzen lässt, nur um das richtige JSON- oder Arbeitsregistrierungsformular zu sehen. Dies gibt Ihnen Erfahrung und etwas zu zeigen. Ihr Code muss nicht schön oder auffällig sein - Sie sind Anfänger, niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!Sie sind gezwungen zu überlegen, wie man es baut. Sie müssen selbst eine Lösung für Ihre Probleme finden. Ich bin der festen Überzeugung, dass es keinen besseren Weg gibt, das Erstellen zu erlernen, als mit dem Erstellen zu beginnen, da Sie dies als Webentwickler tun werden. Die Überwindung von Schwierigkeiten gibt Ihnen ein großes Gefühl der Zufriedenheit, stärkt Ihr Selbstvertrauen und entzündet den Funken, der uns stundenlang über der Tastatur sitzen lässt, nur um das richtige JSON- oder Arbeitsregistrierungsformular zu sehen. Dies gibt Ihnen Erfahrung und etwas zu zeigen. Ihr Code muss nicht schön oder auffällig sein - Sie sind Anfänger, niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!was Sie als Webentwickler tun werden. Die Überwindung von Schwierigkeiten gibt Ihnen ein großes Gefühl der Zufriedenheit, stärkt Ihr Selbstvertrauen und entzündet den Funken, der uns stundenlang über der Tastatur sitzen lässt, nur um das richtige JSON- oder Arbeitsregistrierungsformular zu sehen. Dies gibt Ihnen Erfahrung und etwas zu zeigen. Ihr Code muss nicht schön oder auffällig sein - Sie sind Anfänger, niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!was Sie als Webentwickler tun werden. Die Überwindung von Schwierigkeiten gibt Ihnen ein großes Gefühl der Zufriedenheit, stärkt Ihr Selbstvertrauen und entzündet den Funken, der uns stundenlang über der Tastatur sitzen lässt, nur um das richtige JSON- oder Arbeitsregistrierungsformular zu sehen. Dies gibt Ihnen Erfahrung und etwas zu zeigen. Ihr Code muss nicht schön oder auffällig sein - Sie sind Anfänger, niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!Niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!Niemand erwartet von Ihnen, dass Sie ein Betriebssystem schreiben!

Aber als Person, die Neuankömmlinge rekrutiert, wähle ich in 10 von 10 Fällen jemanden mit eigenem Code, auch hässlich und auf Krücken, und nicht jemanden, der mir mehrere Bewerbungen aus dem Unterricht zeigt (z. B. ein Kreuzworträtsel).

Herr Netter Typ.


Dieser letzte Punkt bezieht sich nicht auf eine bestimmte Erfahrungsebene, sondern im Wesentlichen auf alle, die in unserer Branche arbeiten. Alles ist sehr einfach - sei kein Arschloch. Sei nett zu anderen. Sei hilfreich. Lächeln Fragen Sie, wenn Sie es nicht wissen, erklären Sie es, wenn Sie gefragt werden. Schauen Sie nicht auf Menschen herab, wenn sie nichts wissen, denn jeder von uns kann an seiner Stelle sein, Informatik, Programmierung. Dies ist ein so weites Gebiet, dass es fast unmöglich ist, in allem Experte zu sein. Erkennen Sie, dass Sie von jedem lernen können, auch wenn er nur einen Bruchteil Ihrer Erfahrung hat. Unterrichten Sie andere, weil das Unterrichten anderer eine der besten Möglichkeiten ist, um zu testen, was Sie wirklich wissen. Und akzeptieren Sie die Tatsache, dass Sie, wenn Sie die klügste Person im Raum sind, den Raum wechseln müssen, denn nur so können Sie wachsen und nicht selbstgefällig werden.Testen Sie Ihr Wissen und Ihre Fähigkeiten so oft wie möglich. Wie die übliche Praxis im Fitnessstudio sagt: „Wenn es weh tut, wächst es“, verlassen Sie die Komfortzone und bleiben Sie nicht darin.

Wenn Sie auch an der Front-End-Entwicklung beteiligt sind, lesen Sie unbedingt die vollständige Liste der häufigsten Fehler von Front-End-Entwicklern, die von unserem Front-End-Timlid Petr Kabachinsky zusammengestellt wurden.

All Articles