Karriere in der Softwareentwicklung - wie füge ich Sprachen hinzu oder ändere sie?

Ich bin ein Softwareentwickler, der hauptsächlich in der Windows-Entwicklung in der Delphi-Sprache gearbeitet hat. Zurzeit suche ich einen neuen Job und möchte in einer anderen Programmiersprache arbeiten (hauptsächlich C# oder Java, interessiere mich aber auch für andere), aber ich komme anscheinend nicht über das erste Level hinaus, und ich Ich denke, es liegt daran, dass ich beruflich nicht viel in anderen Sprachen arbeiten darf, obwohl ich von Zeit zu Zeit kleine Dienstprogramme für den persönlichen Gebrauch und für eine kleine gemeinnützige Organisation schreibe, mit der ich zusammenarbeite. Im Wesentlichen habe ich in meinem Lebenslauf nur sehr wenige Einträge für meine Zweitsprachen, daher gehen die meisten Unternehmen davon aus, dass ich nur ein Delphi-Entwickler bin und nicht weiß, wie man mit ihren Systemen arbeitet, obwohl ich es kann oder sehr gut lernen kann schnell. Wie kann ich das überwinden,

Wählen Sie eine Technologie, die Nachfrage hat, und lernen Sie sie. Microsoft verfügt über Zertifizierungen.
Fügen Sie außerdem mehr Text zu den neuen Sprachen in Ihrem Lebenslauf hinzu und spielen Sie die Sprachen herunter, die Sie nicht verwenden möchten. Viele Personalvermittler/Personalabteilungen verwenden Schlüsselwortsuchen, um Lebensläufe zu durchsuchen.
die technik ist weniger wichtig als die karriere, die man durchschlagen will.
@bharal Was? OP ist bereits in Softwareentwickler. OP fragt nach der spezifischen Technologie.
@Blam nein nein, du missverstehst. Ich verstehe, dass OP ein Entwickler ist. Was ich meine ist, dass die Technologie nur ein Werkzeug ist. Ein Entwickler, der fragt, „welche Sprache soll ich lernen“, ist wie die Frage „in welcher Sprache soll ich diese App erstellen“. Das ist eine berechtigte Frage - aber nur , wenn Sie wissen, was die App zu tun hat! Und es gibt andere Überlegungen für unsere Metapher-App ~ Monetarisierung, Gültigkeit, es geht nicht nur um die Sprache. Dasselbe gilt für einen beginnenden Entwickler – es ist ein Fehler, sich auf Kosten der allgemeinen Karriereausrichtung in die Sprache zu vertiefen.
@bharal Was?? So funktioniert es nicht. Ein Architekt wählt die Technologie(n) aus und sucht dann nach Programmierern mit diesem spezifischen Fachwissen. Architekt wird man, wenn man in etwas sehr gut ist. Niemand will angehender Generalist.

Antworten (5)

Erstellen Sie eine großartige Anwendung in dieser Sprache und zeigen Sie sie. Der Schlüssel für ein Interview ist: Zeigen, nicht erzählen.

Lassen Sie Ihren Lebenslauf auf ein Online-Code-Repository (wie Ihr Github-Profil) verweisen. Viele seriöse Entwicklungsunternehmen fragen möglicherweise trotzdem nach einem Github-Profil. Es könnte auch gut sein, ihnen etwas persönlich auf einem Laptop zeigen zu können. Gute Interviewer möchten so viel wie möglich über Ihre Fähigkeiten wissen, bevor sie Sie einstellen.

Einmal fragten sie mich bei einem Bewerbungsgespräch nach meinen Objective-C-Fähigkeiten (iOS-Entwicklung), die ich in einem Lebenslauf erwähnte. Ich hatte damals tatsächlich eine App im App Store, also zückte der Interviewer sein Handy und lud die App direkt vor mir herunter. Obwohl ich keine Berufserfahrung mit Objective C hatte, hatte er keinen Zweifel, dass ich in Objective C programmieren könnte.

Stellen Sie sicher, dass Sie zuerst Ihre gewünschte Sprache hervorheben, und sie könnten davon ausgehen, dass Sie darin am besten sind, und daher wird danach am häufigsten gefragt.

Ich würde es in das Anschreiben UND den Lebenslauf schreiben. Einige HR-Leute lesen zuerst den Brief und andere den Lebenslauf – sie werden Ihre Bewerbung wegwerfen, wenn sie nach einem Java-Entwickler suchen und dort nichts Java drin ist.

Im Anschreiben schreiben Sie, dass Sie zwar Delphi als Hauptsprache sprechen, aber sicher sind, dass Sie ein guter Java-Entwickler sein werden, denn ... nennen Sie Gründe, wie Sie in Ihrer Freizeit mit Java gearbeitet haben, zum Beispiel Software für die Firma t , du hast immer schnell neue Sprachen gelernt, z. B. beim Praktikum x hast du die Sprache y gelernt und das Projekt z damit in nur 3 Monaten abgeschlossen, ... was immer dir einfällt, das du tatsächlich untermauern kannst. Auch ein Zertifikat kann helfen.

Geben Sie im Lebenslauf einfach Freiwilligenarbeit an: Entwickelte Anwendung für gemeinnützige Zwecke mit Java (+Frameworks, falls Sie welche verwendet haben).

Das Erstellen von Software kann sowohl für einen Vollzeitjob als auch für einen Teilzeitjob bei einer gemeinnützigen Organisation gelten (die Linux-Entwicklung war hauptsächlich gemeinnützig und diese Schlüsselpersonen können ihr eigenes Ticket für die Stellenvermittlung schreiben. ). Entscheidend ist der Umfang des Projekts. Beispiel: Haben Sie für eine gemeinnützige Organisation auf einer Website mit viel Verkehr gearbeitet? Haben Sie mit großen Datensätzen gearbeitet?

Sie müssen in der Lage sein, die Fähigkeiten, die Sie in Ihren Nicht-Arbeitsprojekten einsetzen, mit den Anforderungen der Jobs zu verbinden. Wenn Sie dies nicht können, möchten Sie möglicherweise zusätzliche Arbeiten in Betracht ziehen, um Ihre bisherigen Erfahrungen zu erweitern. Außerdem sollten die Leute bei der gemeinnützigen Organisation Ihnen eine sehr starke Referenz geben.

Vielleicht möchten Sie Ihren Fokus ändern. Viele Tech-Shops gehen davon aus, dass Entwickler über Kenntnisse in mehreren Programmiersprachen verfügen. Stellen Sie also zunächst sicher, dass Sie die zusätzlichen Sprachen, in denen Sie arbeiten möchten, tatsächlich beherrschen. Die Suche nach „Code-Interviewfragen“ in Google bietet mehrere Ressourcen, um einzuschätzen, wo Sie in einem Codierungstest stehen könnten.

Zweitens, wichtiger als die Programmiersprache, zeigen Sie ihnen, dass Sie die Probleme verstehen, die ihre Produkte lösen. Wenn Sie mir zum Beispiel zeigen können, dass Sie Buchhaltung verstehen, gehe ich davon aus, dass der Programmierteil mit dem Rest Ihres Fachwissens einhergeht. Dies macht einen großen Unterschied auf der Straße. Viele Entwickler, die sich nur durch die Sprache(n) identifizieren, die sie verwenden, sind eingeschränkt, weil sie möglicherweise nie die Gesamtthemen verstehen, die sie zu hervorragenden Entwicklern und Architekten auf leitender Ebene usw. machen würden.

Zu öffentlich verfügbarem Code ... Als Projektleiter und Manager, der Softwareentwickler interviewt, würde ich Sie nicht dafür bestrafen, dass Sie nichts in Github (oder Bitbucket oder irgendwo online) haben. Aber wenn Sie etwas haben, das ich mir ansehen kann, werde ich es mir ansehen, und wenn es nicht gut ist, wird es gegen Sie angerechnet. Ich würde nach Codierungsstil, Design, Kommentaren und anderer Dokumentation und einer allgemeinen Kohärenz zum Code suchen. Alles, was mir zeigt, dass Sie als Softwareentwickler Gebühren gezahlt und die Lektionen gelernt haben, die erfahrene Entwickler lernen sollten.

Ich würde auch nach Blogposts oder Beiträgen zu Stack Overflow, Reddit, HackerNews usw. suchen, die Ihr Verständnis für Ihr Handwerk demonstrieren. Nein, Sie benötigen keine eigene Domain. Die Anmeldung bei Blogger.com oder Wordpress.com oder einer anderen Blog-Hosting-Site ist in Ordnung. Teilen Sie einfach, was Sie wissen.

Zu Ihrer Information, Anschreiben beeindrucken nur den Lebenslauf-Screener. Danach werden sie ausgezogen und die technischen Manager und Projektleiter sehen nur noch den Lebenslauf. Sie brauchen ein Anschreiben, um die Aufmerksamkeit des Screeners zu erregen, also ist es besser, Ihre Geschichte in so wenigen Worten wie möglich zu erzählen. Machen Sie sich keine Sorgen, Ihre technischen Fähigkeiten im Anschreiben zu verkaufen. Helfen Sie ihnen einfach, sich zu fühlen, als wären Sie die Antwort auf die Probleme, die sie zu lösen versuchen. (Dies setzt voraus, dass Sie etwas über das Unternehmen wissen.)

Unterschiedliche Unternehmen haben unterschiedliche Verfahren. Bei meinem letzten Vorstellungsgespräch bekam ich vom technischen Leiter und dem leitenden Entwickler, die mich interviewten, viele Fragen zu Dingen, die ich in meinem Anschreiben geschrieben hatte.

Das Tolle daran, ein Programmierer zu sein, ist die Leichtigkeit, in neue Technologien einzutauchen.

Wenn ich in Ihrer Situation wäre, würde ich mir ein paar Ideen für mobile Apps einfallen lassen, sie entweder in Java oder C# codieren und sie dann in App Stores veröffentlichen. Sie lernen nicht nur eine neue Sprache, sondern lernen auch, in Nicht-Windows-Umgebungen zu arbeiten. Vielleicht benötigen diese Apps etwas Back-End-Unterstützung. Das gibt Ihnen eine Ausrede, auch in Webentwicklungssprachen einzutauchen.

Sobald Sie Apps veröffentlicht haben, haben Sie nun etwas Konkretes, das Sie als Teil Ihres Portfolios angeben können, und können die Sprache zu Ihrem Lebenslauf hinzufügen.

Dies ist in die gleiche Richtung wie das, was ich antworten würde. Die einzige Änderung, die ich vornehmen würde, ist, die App für etwas bei der Arbeit zu entwickeln. Ich hatte noch nie Schwierigkeiten, Ideen für Utility-Apps zu entwickeln, die allen helfen würden, produktiver zu sein (insbesondere mich produktiver zu machen). Wenn sich herausstellt, dass eine gute Möglichkeit, das Dienstprogramm zu schreiben, darin besteht, diese neumodische Sprache/Technologie zu verwenden, die ich lernen wollte, dann werde ich diese verwenden. Es ist rundum eine Win-Win-Situation. Sie sammeln „on-the-job“-Erfahrung, Sie (und andere) werden aufgrund des Nutzens bei Ihrer Arbeit produktiver.