2010-03-02 5 views
8

Die Menge der verfügbaren Programmiersprachen ist sowohl ein Segen als auch ein Fluch, denke ich. Ich kenne ein Los von Programmiersprachen bereits, einige nur auf Syntax-Ebene und einige gut genug, um tatsächliche Codierung zu tun (Python, C, C++, Haskell, Perl, BASH, PHP und viele andere). Ich programmiere fast so lange, wie ich Computer (6 Jahre) intensiv benutze, in fast jedem Paradigma (funktional, imperativ, objektorientiert), aber ich fühle mich nicht bereit für die Softwareindustrie.Wie man sich auf die Industrie vorbereitet?

Ich habe viele größere Programme in vielen verschiedenen Sprachen geschrieben, hauptsächlich netzwerkbasiert, einschließlich großer Multithread-Server/Clients, und ich fühle mich immer noch nicht vorbereitet!

Zur Zeit bin ich besessen von meinem "3-Tier" -Plan, der eine höhere Sprache wie Haskell, eine interpretierte Sprache wie Python und eine Low-Level-Sprache wie C enthält, aber ich fühle mich nicht gut genug!

Ich weiß, wie man in Teams arbeitet und wie man gegebenen Richtlinien arbeitet, aber ich bin unsicher.

Bin ich vorbereitet?
Bitte, nette Leute von stackoverflow, hilf mir aus diesem Durcheinander! :(


Danke für alle Antworten, ich wünschte, ich könnte mehr Antworten als DIE Antwort wählte :)

+12

Nehmen Sie einfach ein Valium und gehen Sie mit Ihrem Leben voran. Wenn Sie mit Haskell gearbeitet haben, sind Sie wahrscheinlich fortgeschrittener als viele Programmierer, die ich kenne. – ChaosPandion

+2

Hast du einen "Drei-Stufen-Plan"? Einige Leute benutzen VB6 seit Jahren ausschließlich und machen Geldbündel. Warum kommst du nicht mit mir arbeiten? – ChaosPandion

+1

Wo wohnen Sie und in welchem ​​Teil der Softwarebranche möchten Sie arbeiten? –

Antwort

12

Hört sich an, als wüssten Sie eine Menge über Programmierung, aber Sie erwähnen nichts anderes. Ein Softwareentwickler zu sein erfordert mehr als nur das Programmieren als technische Fähigkeit. Lernen Sie Themen wie Quellcode-Kontrolle, Komponententests/testgetriebene Entwicklung, kontinuierliche Integration usw. auffrischen. Hoffentlich landen Sie in einem Job, in dem mindestens einer von ihnen verwendet wird. Probieren und lernen Sie so viele nützliche Zeitsparer wie Sie können mit Ihren Werkzeugen; versuchen Sie, mit Ihrer IDE so flexibel und effizient wie möglich zu werden.

Anderswo, vergessen Sie nicht, die persönlichen Fähigkeiten zu entwickeln; Einstellung und Arbeitsethik, und mehr mit Ihrem Bereich, Themen wie Anforderung von Anforderungen, die Dokumentation von Problemen und die Beschreibung von Problemen und Lösungen. Mach dir darüber keine Sorgen, wenn du neu einsteigst, denn du wirst nicht erwartet, dass du ein großes Wissen über sie hast, aber wenn du dich zumindest dessen bewusst bist und versuchst, dich zu verbessern, dann hast du ein größeres Chance, dies zu tun.

Versuchen Sie, allgemeine Softwareentwicklungsprobleme zu bewerten, die nicht direkt codieren, wenn Sie nicht bereits allgemeine Einstellungen zu sicherheitsgerichteter Entwicklung (und Testen), gutem Design und ähnlichen Best Practices haben.

Schwitzen Sie nicht zu sehr darum, auf Anhieb perfekt zu sein. Wenn Sie keinen Platz für Verbesserungen haben, werden Sie Ihre Karriere nicht lange genießen, und es macht nicht viel Spaß, als Programmierer zu brennen.

1

Das wichtigste, was ich denken kann, erfolgreich zu sein in der Industrie zu in der Lage sein, schnell und effizient auf Veränderungen zu reagieren.

0

Der einzige Weg, um sicher zu wissen, ob Sie bereit sind, ist es zu versuchen. Manchmal hilft es sogar, in das tiefe Ende geworfen zu werden, und du wirst feststellen, dass du in diesem ersten realen Job mehr lernst als in all den Büchern/etc, die du in den Jahren zuvor gelesen hast. Wenn Sie mehrere Sprachen beherrschen, können Sie die zugrundeliegende Semantik der Programmierung im Allgemeinen verstehen, aber in einem echten Job werden Sie wahrscheinlich Tag für Tag an einer oder zwei Sprachen festhalten, also sollten Sie sich nicht darum kümmern, jede Sprache zu kennen.

Es ist besser zu versuchen & scheitern als zu verbringen Ihr Leben zu fragen, ob Sie bereit sind.

2

Sie wissen genug - es gibt eine Mindestschwelle von Wissen in der Industrie erforderlich (was über was einige Entwickler haben), aber es klingt wie Sie bereits da sind.

Für jeden mit der Fähigkeit, neue Programmiersprachen, Techniken, usw., sind leicht zu erlernen. Eine gute Firma, für die Sie arbeiten, wird Sie basierend auf Ihren Fähigkeiten einstellen, nicht nach Wissen (das sehr schnell veralten kann).

Wenn Sie sich als Softwareentwickler hervorheben möchten, stellen Sie sicher, dass Sie solide Kommunikationsfähigkeiten für Berichte, E-Mail, Telefon, Besprechungen usw. haben. Dies ist ein seltenes Geschenk im Softwarebereich, und obwohl es nicht ist notwendig auf den Junior-Ebenen wertvoll, es zahlt sich auf lange Sicht aus.

1

Ich habe vor kurzem einen Programmiertest gemacht, den ich für einen guten und fairen Test hielt. Ich habe es ohne große Mühe bestanden. Mir wurde gesagt, dass 50% der Leute (das sind alle Leute mit Programmierer auf dem Lebenslauf) nicht einmal wissen, wo ich anfangen soll. Ihr Ernst und Ihre Begierde werden Sie höchstwahrscheinlich in das obere Drittel der meisten Orte bringen, mit denen Sie beginnen können.

+1

Oh yeah! Die meisten "Software-Entwickler" interessieren sich nicht Es wird schwierig sein, aus den Top 10 heraus zu bleiben. "Leider hat Kompetenz nicht das, was Sie passierte Interviews. –

+0

Ich habe Aufgaben an Menschen gegeben, die angeblich 5 Jahre Erfahrung haben und sie können nichts zum kompilieren bekommen. – rerun

-1

Gehen Sie zu Würfeln oder Monster oder was auch immer Ihre Lieblings-Job-Site ist und sehen, was Menschen suchen. Es ist nicht Haskell, es ist C++. Lerne das gut und du bist bereit zu gehen. Sobald du in der realen Welt unterwegs bist, wirst du schnell genug lernen, was wichtig ist. Dies sind meist die Soft Skills, die Ihnen die Schule nicht beibringt. Dinge wie, wie man mit den Ahnungslosen auskommt, wie man seine Ideen präsentiert, so dass sie tatsächlich betrachtet werden, und wie man den Wald sieht, obwohl man unter einem Felsen festsitzt.

+1

Ich bin mir ziemlich sicher, wenn er Haskell kennt, jede andere Sprache sollte ihm nur ein Wochenende zum Lernen bringen. " – Earlz

+0

Die Frage war, bereit zu sein für die Industrie. Eine Programmiersprache zu kennen, die nicht ' Die in der Industrie weit verbreitete Technik, egal wie schwierig sie ist, wird Sie nicht an den Screenern in der Personalabteilung vorbeibringen. – jfawcett

1

Bekannte Sprachen sind nicht alles, was Sie tun können.

Wenn Sie können, wird ein Praktikum/Praktikum Wunder tun. Jeder kann programmieren. Real-World-Erfahrung wird Sie mehr lehren als jedes Tutorial, Selbstlernen oder Schulunterricht.

Natürlich, ein Praktikum zu gewinnen erfordert einige Erfahrung, so dass es sehr viel 22 zu fangen.

Wenn ein Praktikum nicht möglich ist, engagieren Sie sich für ein Open-Source-Projekt. Sie werden lernen, wie Sie mit Menschen arbeiten, die klüger sind als Sie.

1

Wahres Wissen besteht darin zu wissen, dass Sie nichts wissen.

Sokrates einige intelligente Geck

Ich denke, das unter den Entwicklern sehr verbreitet ist. Es ist ein besseres Zeichen, wenn Sie zu dem Schluss kommen, dass Sie voll ausgebildet sind.

+0

"Wahres Wissen ist zu wissen, was Sie nicht wissen." - Konfuzius. (Ich denke, das stimmt, aber ich bin mir nicht ganz sicher.) –

+0

Könnte sein, ich bin nicht 100% sicher, aber die Quellen, die ich gefunden habe, sagten Sokrates. Aber wer hat jemals gesagt, dass es wahr ist? – anddoutoi

Verwandte Themen