Viele von uns haben im Laufe der Jahre in verschiedenen Umgebungen gearbeitet und festgestellt, dass einige produktiver sind als andere. In vielen Fällen hängt es nicht direkt mit den Fähigkeiten der Entwickler zusammen, sondern mit ihrer Umgebung. Ich selbst habe dies an Orten erlebt, an denen ich mich schneller und besser zu entwickeln schien. Und noch andere Orte scheinen mir Zeit zu kosten und mich weniger nachdenklich zu entwickeln.
Was schafft Ihrer Meinung nach eine produktive Entwicklungsumgebung?
development-environment
Sampson
quelle
quelle
Freiheit für die Programmierer, ein bisschen zu experimentieren
quelle
Menschen, mit denen es Spaß macht zu arbeiten.
quelle
Eine klar verstandene Geschäftsstrategie im Unternehmen. Wenn das Unternehmen keine langfristige Vision, keine kurzfristigen Ziele und keine gut verstandenen unmittelbaren Bedürfnisse hat, werden auch großartige Programmierer versuchen, mit den sich wandelnden Winden des Managements Schritt zu halten.
quelle
Kontinuierliche Akzeptanz neuer Technologien.
Dies wird oft als selbstverständlich angesehen. Ich kann das sagen, nachdem ich den Kummer eines Programmierers gehört habe, der noch Access als Backend-Datenbank verwendet hat, und eines Vertriebsleiters, der den ganzen Tag mit Citrix-Terminals kämpft.
quelle
Noch nicht erwähnt: eine gigantische weiße Tafel.
quelle
Umgebung:
Mannschaft:
Computer:
quelle
Die beste Umgebung, in der ich je gewesen bin, war, wenn Sie ein gutes Team mit lustigen Problemen haben, die es zu lösen gilt. Wenn die Arbeit nicht lustig oder interessant ist, egal was Sie tun, wird das Team nicht glänzen.
Das nächste ist die physische Umgebung, minimales Rauschen und gute Beleuchtung (was nicht immer Licht bedeutet, sondern Licht in der Menge, in der die Entwickler am besten arbeiten).
Die letzten Dinge sind gute Werkzeuge / Spielzeug. Gute Computer, gute Software, mehrere Monitore usw. Und Spielzeug zum Entspannen, Tischfußball usw. Früher hatten wir unsere Ad-hoc-Stehhilfen am Tischfußball, und obwohl es weniger produktiv war, machte es viel mehr Spaß und war erlaubt uns zum ausklingen zu bringen, als wir uns auf die nächsten schritte vorbereiteten.
quelle
In meinem letzten Job trafen wir Entwickler uns einmal pro Woche in unserem eigenen privaten Besprechungsraum und sprachen nur über Technologien, mit denen wir gespielt haben, oder über Frameworks, die wir erforscht haben. Manchmal schrieben wir Probleme an die Tafel und lösten sie als Team. Es war nichts Verrücktes, als Billard oder Videospiele zu spielen, aber es bot eine solche Befreiung von der Anspannung des Büros, dass wir unsere Aufregung für den Tag wieder aufleben lassen und die Aufgabenliste beenden konnten.
Heute arbeite ich als einziger Entwickler an einem kleinen Projekt - und Junge, ich vermisse diese Treffen! StackOverflow ist mein Ersatz :)
quelle
"Dan Pink on Motivation" stellt einige Ideen fest, die mir am Arbeitsplatz wirklich gefallen: Autonomie, Meisterschaft und Zweck. Gib mir die Freiheit, die Arbeit zu erledigen, lass mich kompetent werden und einen Zweck haben.
Auf der technischen Seite erweisen sich gute Hardware wie Dual-Monitore und ein Computer mit einer angemessenen Größe von Festplatte und RAM sowie gute Tools wie eine IDE, Quellcodeverwaltung und ein Computer mit kontinuierlicher Integration ebenfalls als sehr nützlich.
quelle
quelle
Hinzufügen zu den oben genannten.
1) Gutes Verhältnis zu Arbeitskollegen
2) Ein schöner großer Tisch
3) Zwei große Monitore
Ich denke, es ist sehr wichtig, sich wohl zu fühlen.
quelle
quelle
In Ordnung:
Die Werkzeuge, die ich brauche, um dies jahrelang problemlos zu tun. OSHA-konformes ergonomisches Stuhl- und Schreibtisch-Setup, Tastatur, die zu mir passt. Viel Bildschirm. Angemessene Computerhardware.
Umgang mit Menschen, die schlauer sind als ich. Isolation, wenn ich sie brauche.
Interessante Projekte, die mich beeindrucken, neue Herausforderungen und andere Dinge, die mich dazu bringen, produktiv zu sein.
Ein agiler Prozess, an dem bis zu einem gewissen Grad alle Aspekte der Entwicklung beteiligt sind. Die Fähigkeit, Anforderungen zu leiten und die nicht verhandelbaren Anforderungen ordnungsgemäß umzusetzen.
Zumindest ein wenig mangelnder Code-Besitz. Ein Prozess, mit dem meine Mitarbeiter Änderungen an meinem Projekt überprüfen können oder umgekehrt. Die Fähigkeit, das Richtige zu tun, wenn ich ein Problem finde, ohne dazu verdammt zu sein, es für immer beizubehalten.
quelle
Ruhige, bibliotheksähnliche Umgebung mit höheren Arbeitsbereichen, in denen Sie sich konzentrieren und kreativ und produktiv arbeiten können. Ich bin mir anderer nicht sicher, aber beim Codieren habe ich den gesamten Code im Kopf, bevor ich ihn an das Terminal stelle. Jegliche visuellen oder akustischen Ablenkungen können die Geschwindigkeit und Genauigkeit der jeweiligen Aufgabe erheblich beeinträchtigen. Wie immer kommt das Testen und Debuggen als Nächstes, aber Sie sind dem Spiel einen Schritt voraus.
quelle