Programmierer - Erwartung und Wirklichkeit

Vorwort


Diese Publikation gibt nicht vor, universelle Wahrheit zu sein, sie ist nichts anderes als persönliche Erfahrung, Beobachtungen und die Erfahrung von Kollegen. Ich denke, dass Neulinge, die sich am Rande einer interessanten Programmwelt befinden, sich ernsthaft mit dem tatsächlichen Stand der Dinge befassen sollten. Je schneller die Illusionen in den Hintergrund treten, desto schneller können Sie (und nicht nur) Ihre Entwicklungen genießen.

Mythen für Anfänger


Mythos 1: „Jetzt lerne ich C # (C ++, Assembler usw.) und werde ein echter Programmierer.“
Wie die Praxis zeigt, müssen Sie nicht nur die Sprache beherrschen, sondern auch viele verwandte Bereiche kennen. Zum Beispiel benötigen Sie sehr oft Kenntnisse in jeder Art von Buchhaltung. Der Kunde braucht keinen Programmierer, nur weil er gut codiert, der Kunde bereit ist, Geld zu zahlen, und manchmal nicht klein, um die Aufgabe zu lösen, und keinen schönen Algorithmus.

Mythos 2: "Ein wahrer Programmierer schreibt Programme für Tage"
Wie die Praxis zeigt, programmiert der Programmierer im besten Fall ⅓ der Projektzeit, der Rest der Zeit wird für das Festlegen von Aufgaben, die Kommunikation mit dem Kunden und andere Tötungen dieser Zeit aufgewendet. Nein, natürlich gibt es Umgebungen, in denen der Programmierer beispielsweise wie in SAP Tage genau codiert. In SAP ist die Position mit dem niedrigsten Entgelt der Encoder, der streng nach den vorgegebenen Vorgaben schreibt. Schritt nach rechts, Schritt nach links - schießen. Und dennoch hält das Unternehmen, das das Unternehmen automatisiert, eine große Anzahl von Mitarbeitern zurück, weit davon entfernt, nur diese Funktionen zu programmieren.

Mythos 3: „Wie mache ich jetzt die Buchhaltung und wie fängt jeder an, sie zu kaufen?“
Leider amüsieren sich viele mit diesem Mythos (und ich war vor langer Zeit naiv). Jetzt erstelle ich ein Programm, das schneller und bequemer ist als das gleiche 1C und das jeder braucht. Aber nach der ersten Arbeit stellt der Benutzer eine vernünftige Frage: „1C funktioniert für mich, es stellt alle zufrieden, unterstützt Änderungen in der Gesetzgebung fast vollständig, erlaubt mir, die Registrierung vorzunehmen. Berichterstattung und warum ist Ihr Programm dann niemandem bekannt? “

Mythos 4: "Ich müsste nur ein paar Exemplare meines Produkts verkaufen und dann sicherlich mit Füßen treten"
Angenommen, ein Bekannter hat eine einflussreiche Person, die den Kauf dieses Produkts initiiert, um zu beginnen. Dies kommt häufig vor (ich werde aus offensichtlichen Gründen keine spezifischen Unternehmen nennen). Und dann muss man das Produkt unterstützen, damit die Konkurrenten schauen, neiden und es auch kaufen wollen. Und hier beginnt die unangenehme Sache - der Entwickler brennt aus, verlangt eine Menge Geld, weil Sie es essen wollen, und der Kunde, der ernsthaft darüber nachgedacht hat, kauft 1C, wo Updates kostenlos oder Shareware sind.

Mythos 5: "Ich werde Spezialist und reich wie Bill Gates"
Dies ist der traurigste Mythos aller anderen. Erstens war und ist Bill Gates von Natur aus ein Manager und kein Programmierer. Er dachte immer, wie man profitabler verkauft und nicht, wie man den Code besser erstellt. Daher versichere ich Ihnen, dass es ohne weitere Ausbildung (zum Beispiel in finanzieller und wirtschaftlicher Hinsicht) nicht möglich sein wird, über den Leiter der IT-Abteilung oder den Projektmanager hinauszugehen.

Mythos 6: "Ich werde interessante Programme erstellen."
Aber nein. Sie zahlen nur dann Geld für die Arbeit, wenn der Kunde das Ergebnis benötigt, und wie sich am Markt herausstellt, sind sehr langwierige Buchhaltungssysteme oder ähnliches erforderlich. Wenn es der Traum des Lebens war, Spiele zu entwickeln, dann gibt es auch viele Monate lang mühsame Lösungen für Probleme.

Bei der Arbeit mache ich auch etwas, das ich nicht mag. Hauptsache, der Kunde möchte es, aber zu Hause starte ich abends mein Lieblings-TASM und -Programm für die Seele. Absolut unnötige Programme werden von Herzen und zu Ihrer eigenen Zufriedenheit erstellt.

Persönliche Erfahrung oder wie man Anfänger nicht


In einem der Projekte wurden junge Mitarbeiter eingestellt, die gerade einen Abschluss in Programmieren von einer Universität erhalten hatten. Und ein junger Arbeiter entdeckte irgendwie eine auffällige Sache: „Ich hätte nie gedacht, dass ich Wissen von der Universität streichen und wieder studieren müsste“. Ich weiß nicht genau, was ihn getroffen hat, aber er hat in allem Recht. Wir beschäftigen uns mit coolen Sortiermethoden, und der Kunde muss nur sehen, wann und wo er das Geld ausgeben wird, wann und wie viel er eine neue Brücke bauen wird, im Allgemeinen alles andere als die Fähigkeiten eines Programmierers. Aus diesem Grund sind viele Programmierer enttäuscht zu erfahren, dass er im Unternehmen weit von der ersten Person entfernt ist und dass ihm sogar ein Buchhalter das Leben beibringt.

Es mag lächerlich erscheinen, aber im wirklichen Leben muss man durch Null teilen. Dies ist das auffälligste Beispiel, das ich zu Beginn meiner Karriere als Programmierer kennengelernt habe. Der Buchhalter arbeitet allen Ernstes mit Konzepten wie "Nun, wir teilen durch Null, was bedeutet, dass wir als Ergebnis Null bekommen ...". Wegen meiner Dummheit fing ich an, empört zu sein, jemanden zur Schule zu schicken, einen angemessenen Kunden zu fordern, aber stattdessen lehnte das Unternehmen meine Dienste ab und wandte sich an jemanden, der weiß, wie man durch Null teilt. Jetzt weiß ich, dass der Vogel aus meiner Sicht nicht unbedingt aus der Sicht des Kunden ist, und das war dann nur Wildheit.

Altruismus ist im IT-Bereich nicht erwünscht. Einmal habe ich mich entschlossen, einem guten Menschen bei der Gründung eines Computerclubs zu helfen (sie waren vor etwa 15 Jahren in Mode), und es ist absolut kostenlos. Ja, ein Tag auf den Beinen ohne einen Cent Geld, nur um mit einem guten Menschen zu kommunizieren. Aber dann lehnte er meine Hilfe aus dem Grund ab, wie er es ausdrückte: "Wenn jemand kein Geld für die Arbeit nimmt, dann ist er nicht ehrlich." Und wie die Praxis zeigt, hat alles seinen eigenen Preis. Geld ist nicht nur der Motivator des Entwicklers, sondern auch der Demotivator des Kunden. Er verwirft erneut unnötige Funktionen in der Long Box und der Entwickler muss nicht die verrückte Idee eines anderen umsetzen.

Ich erlaube mir auch, die interessanteste Tatsache des Wachstums eines Programmierers als Spezialist zu erwähnen. Während ein Mensch noch ein Anfänger ist und nur die Weite der IT-Welt lernt, scheint es ihm, dass er alles weiß. Mit der Erfahrung versteht der Programmierer, dass er fast nichts weiß. Und erst als Profi versteht der Entwickler, dass es ihm absolut egal ist, Hauptsache der Kunde wäre zufrieden. Natürlich wird dieser Witz als Witz erzählt, aber das Problem ist, dass dies eine echte Realität ist.

Empfehlungen an dich selbst in deiner Jugend


1. Spucken Sie auf einen schönen Code, lernen Sie die Standardkonfigurationen, das Zelleninventar und das Budget besser kennen.
2. Vergessen Sie gute Benutzer, sie sind per Definition faul. Sie brauchen keine Innovationen und Schwierigkeiten, bei jeder Innovation werden die Benutzer auf die eine oder andere Weise sabotieren und rebellieren.
3. Die meisten großen Manager wissen im Allgemeinen nicht, warum sie Strukturen benötigen. Demütigen Sie sich und beweisen Sie nicht Ihren Wert, es ist undankbar und offensichtlich zu verlieren. Sie werden wissentlich genickt, Sie werden gelobt, aber eine völlig andere Person wird alle Lorbeeren des implementierten Systems haben. Dies gilt übrigens für jede Projektaktivität.
4. Zeitplanung lernen. Üben Sie direkt nach der Universität, und es ist besser, direkt als Programmierer zu studieren. Dies ist sehr wichtig und gerade wegen des Mangels an diesem Wissen scheitern viele Projekte auf unangenehme Weise.
5. Lernen Sie, Geld zu nehmen. Nehmen Sie für jedes Niesen eine bestimmte Menge. Ja, es ist beängstigend, ja, Sie können den Kunden verlieren, aber dafür stellt Ihnen ein süchtiger Kunde schnell Arbeit zur Verfügung.
6. Spielen Sie keine Computerspiele und treiben Sie keine Sportarten. Ist lustig Viele haben ernsthafte Probleme. Dass das erste, das zweite die Produktivität stark beeinflusst. Aus diesem Grund konzentrieren sich viele Organisationen auf Fitnessstudios, Schwimmbäder und Fitnesszentren, wenn nur die Mitarbeiter effizienter arbeiten.
7. Das Wichtigste - vergessen Sie nicht Ihre Familie, rufen Sie Ihre Familie an, besuchen Sie Ihre Eltern und respektieren Sie Ihre Kinder. Glauben Sie mir, diese Fehler sind fast unmöglich zu beheben.

Was scheint in diesen Tipps mit C ++ - Algorithmen üblich zu sein? Das ist ungewöhnlich, dass wenn nur jemand mir solche Ratschläge gegeben hätte, sie viel weniger Zapfen gefüllt hätten. Ich hoffe, dass es nach diesem Text in der Welt etwas weniger Zapfen geben wird, die von jungen Leuten gefüllt werden.

Jetzt auch beliebt: