{"id":779,"date":"2013-10-08T15:17:46","date_gmt":"2013-10-08T22:17:46","guid":{"rendered":"http:\/\/10kdev.net\/?p=779"},"modified":"2013-10-08T15:17:46","modified_gmt":"2013-10-08T22:17:46","slug":"implementors-are-the-astronauts","status":"publish","type":"post","link":"http:\/\/10kdev.net\/?p=779","title":{"rendered":"Implementors Are The Astronauts"},"content":{"rendered":"<div id=\"attachment_778\" style=\"width: 398px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/10kdev.net\/wp-content\/uploads\/2013\/10\/cosmonaut.jpg\"><img aria-describedby=\"caption-attachment-778\" decoding=\"async\" loading=\"lazy\" class=\"size-full wp-image-778\" alt=\"cosmonaut\" src=\"http:\/\/10kdev.net\/wp-content\/uploads\/2013\/10\/cosmonaut.jpg\" width=\"388\" height=\"247\" srcset=\"http:\/\/10kdev.net\/wp-content\/uploads\/2013\/10\/cosmonaut.jpg 388w, http:\/\/10kdev.net\/wp-content\/uploads\/2013\/10\/cosmonaut-300x190.jpg 300w\" sizes=\"(max-width: 388px) 100vw, 388px\" \/><\/a><p id=\"caption-attachment-778\" class=\"wp-caption-text\">Hail the Implementor<\/p><\/div>\n<p>So it&#8217;s down to the wire. \u00a0It&#8217;s launch day, your managers were barely able to control the unforeseen circumstances but got a launch window. \u00a0The operations crew has all of the release notes and their process, and you the developer are sitting there on site or on the phone, VPN&#8217;d in to execute the software that you wrote.<\/p>\n<p>You are the implementor, and you are the astronaut of the software world. \u00a0Your ass is on the line, you lead the execution of the most important asset your company probably owns. \u00a0You got the specs from management, business and the architects and then you went built it and got it ready, and not when the launch comes only *you* can pilot the software. \u00a0If there&#8217;s a database problem, you fix it. \u00a0If there&#8217;s a software bug, you patch it and make it go.<\/p>\n<p>In the control room you have your managers, architects, testers and business crew. \u00a0They sit in Mission Control. \u00a0But the implementors &#8212; mostly developers, some DBAs and other tech savy airmen, are the people with the know-how, and the ones that suffer when things break.<\/p>\n<p><strong>Corporations are missing a whole career path<\/strong><\/p>\n<p>I don&#8217;t know why it is that everyone thinks the next step after developer is architect. \u00a0It&#8217;s not. \u00a0The next step after being an artist is not art critic or art gallery owner, its just to become a better artist.<\/p>\n<p>This year at a gig I heard a very narrow minded conversation about the hierarchy of a company &#8212; they had different levels of &#8220;architect.&#8221; \u00a0Usually as a developer in a corporate stack you can go two paths &#8211; architect or management. \u00a0 \u00a0The actual act of developing is considered a lesser quality. \u00a0Anyway, the conversation went on about &#8220;after lead developer you become junior architect, then, mid-level architect and finally senior architect. \u00a0After that is CIO level4 . . .&#8221; blah blah. \u00a0Bobcat Scout to Wolf Scout to Bear Scout to Junior Birdman. \u00a0Pay grades are not skill competency. \u00a0This team was also majorly subject to the Peter Principle we all know so well.<\/p>\n<p>Being \u00a0Lead Developer &#8212; or a developer of any sort &#8212; means you make architectural decisions as well. \u00a0It is perhaps the most important step &#8212; the execution. \u00a0There are great architects out there; they look at the big direction of the company and say something like &#8220;Alfresco plus J2EE plus Guice plus Postgre SQL \u00a0plus Cassandra equals our future&#8221; or things like that. \u00a0Then comes the nasty little details.<\/p>\n<p>For instance, we had set up a build server and ran into a brick wall with Mercurial versioning and 64 vs 32 bit plugin handling of Sonar. \u00a0Developers handled that. \u00a0On another project we had to write Hibernate overrides because the persistence libraries didn&#8217;t work so well with our database choice. \u00a0This didn&#8217;t come into notice until after we had deployed, due to another dependency on the servers. \u00a0I lost sleep that night (and I am a huge proponent of \u00a0having dev environments = production, but many have fought against that idea in the past). \u00a0 \u00a0On another project some architect mixed the newest Struts, PrimeFaces, JQuery and a really bad choice of Spring together. \u00a0Developers had to deal with that.<\/p>\n<p>Corporations lose a ton of knowledge when they promote and do not reward the people who know how to do something, looking at management of that know how as more important. \u00a0Well, these day with PMing a separate career path, the management can&#8217;t manage development at all.<\/p>\n<p><strong>A Guy I Knew<\/strong><\/p>\n<p>I worked with a guy who had a PhD in Chemical Engineering and had massive command of the Java language. \u00a0He wrote beautifully designed libraries, and sat at a small desk in our developer area. \u00a0My feeling was, compared to the fast talking architect (one of the 10% hands on- paper types) he provided four times as much value, yet was paid less. \u00a0A manager lamented &#8220;too bad this guy doesn&#8217;t present well, he could move up.&#8221; \u00a0In the meantime he wrote the data libraries and sharding code that supported 100&#8217;s of developers, and led a small team to handle it. \u00a0 \u00a0They should have just gave him the title &#8220;architect&#8221; to pay him more and let him be one of the venerated hands-on architects, but they never did. I always will think of this guy as the model lead implementor.<\/p>\n<p>When coaches coach, you still have to have quarterbacks, pitchers, goalies, and shortstops. \u00a0 And it&#8217;s like that in software. \u00a0No one in pro sports wants to become a coach, they&#8217;d rather keep playing for as long as they can. \u00a0True developers and true implementors are like that: the challenge of creativity and giving to the world never dies in them.<\/p>\n<p>The implementor is the astronaut, the brave one, the creative one. \u00a0I guess as implementors we all architect, manage, and requirement drill &#8212; we do it all no matter how they try to divide the labor. \u00a0The industry can try to get around this with labels and pay grads, but the reality sits true: implementors are the astronauts.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So it&#8217;s down to the wire. \u00a0It&#8217;s launch day, your managers were barely able to control the unforeseen circumstances but got a launch window. \u00a0The operations crew has all of the release notes and their process, and you the developer are sitting there on site or on the phone, VPN&#8217;d in to execute the software [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/779"}],"collection":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=779"}],"version-history":[{"count":3,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/779\/revisions"}],"predecessor-version":[{"id":782,"href":"http:\/\/10kdev.net\/index.php?rest_route=\/wp\/v2\/posts\/779\/revisions\/782"}],"wp:attachment":[{"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=779"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=779"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/10kdev.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=779"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}