{"id":274,"date":"2016-09-26T10:44:12","date_gmt":"2016-09-26T14:44:12","guid":{"rendered":"https:\/\/mberlove.com\/blog\/?p=274"},"modified":"2016-09-26T10:44:12","modified_gmt":"2016-09-26T14:44:12","slug":"developers-need-better-onboarding%e2%80%8a-%e2%80%8amake-learning-a-guarantee","status":"publish","type":"post","link":"https:\/\/mberlove.com\/blog\/developers-need-better-onboarding%e2%80%8a-%e2%80%8amake-learning-a-guarantee\/","title":{"rendered":"Developers Need Better Onboarding\u200a\u2014\u200aMake Learning a Guarantee"},"content":{"rendered":"<p><img decoding=\"async\" class=\"graf graf--h3\" draggable=\"false\" src=\"https:\/\/cdn-images-1.medium.com\/max\/1000\/1*wywjQVrzT5Kpc_ayRpxZkg.jpeg\" data-image-id=\"1*wywjQVrzT5Kpc_ayRpxZkg.jpeg\" data-width=\"1920\" data-height=\"855\" \/><\/p>\n<p class=\"graf graf--p\"><strong class=\"markup--strong markup--p-strong\">Initial setup:<\/strong> Most systems need setup. Don\u2019t even discuss work before this gets completed. Make sure the new dev is where they need to be. Stressing out about getting work done while struggling to get your system working is a guarantee of starting out on the wrong foot for everyone.<\/p>\n<p class=\"graf graf--p\"><strong class=\"markup--strong markup--p-strong\">The first two weeks<\/strong> after setup is completed are allotted for the new developer to learn the codebase he or she will be working with. Eliminate any major focus besides learning\u2014 the new hire\u2019s only task is to become familiar with the code, systems, and processes that are in use. The investment of two weeks will be more than made up for in productivity as the new hire starts contributing with the familiarity and comfort provided by two weeks of learning.<\/p>\n<p class=\"graf graf--p\"><strong class=\"markup--strong markup--p-strong\">Other developers<\/strong> can be under advisement during that two week period that the hire will probably have questions. If it\u2019s better for the developers not to be disturbed, there can be a general understanding of some medium through which the new developer can ask questions without interrupting anyone, like a channel on Slack, or a company forum, or an email list. The other developers must watch this medium more closely during that period, and the hire can then feel free to ask as many questions as necessary via that channel, without worrying about who to ask and how often is too often to bother people. Likewise the existing developers only have to look at this medium and answer questions when they\u2019re in between tasks and have a few spare moments. This will make the first couple weeks a bit more smooth for everyone.<\/p>\n<p class=\"graf graf--p\"><strong class=\"markup--strong markup--p-strong\">Implement a \u201crotation\u201d<\/strong> where one developer at a time is on standby, ready to answer the new hire\u2019s questions at any given time (during work hours, of course). During this time that developer\u2019s load can be reduced in the light of that additional task. Again, this two week period is an investment.<\/p>\n<p class=\"graf graf--p\">\n<strong class=\"markup--strong markup--p-strong\">As the two weeks conclude<\/strong> the new hire can also be assigned certain basic tasks that allow him or her to actively contribute while they learn the code\u200a\u2014\u200afor instance, a task of writing up basic documentation for every process they learn, so for instance if someone showed them how to deploy code to the staging environment, they could write this up and then make it available to future hires to make the learning process smoother the next time. Likewise, a new hire in the ramp-up period could add comments to the code wherever gaps in comments exist, giving him or her an opportunity to become familiar with the code but also help everyone handle the code a little bit better. The new developer is at once learning and contributing, to everyone\u2019s benefit.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Initial setup: Most systems need setup. Don\u2019t even discuss work before this gets completed. Make sure the new dev is where they need to be. Stressing out about getting work done while struggling to get your system working is a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[109,125],"tags":[34,186,37,187],"class_list":["post-274","post","type-post","status-publish","format-standard","hentry","category-learning","category-programming","tag-business","tag-developers-hiring","tag-learning","tag-onboarding"],"_links":{"self":[{"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/posts\/274","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/comments?post=274"}],"version-history":[{"count":1,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/posts\/274\/revisions"}],"predecessor-version":[{"id":275,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/posts\/274\/revisions\/275"}],"wp:attachment":[{"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/media?parent=274"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/categories?post=274"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mberlove.com\/blog\/wp-json\/wp\/v2\/tags?post=274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}