• Complain

Cory Berg - Software++: Must-Have Skills for Software Engineers

Here you can read online Cory Berg - Software++: Must-Have Skills for Software Engineers full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2015, publisher: Cory Berg, genre: Romance novel. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

No cover
  • Book:
    Software++: Must-Have Skills for Software Engineers
  • Author:
  • Publisher:
    Cory Berg
  • Genre:
  • Year:
    2015
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Software++: Must-Have Skills for Software Engineers: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Software++: Must-Have Skills for Software Engineers" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Cory Berg: author's other books


Who wrote Software++: Must-Have Skills for Software Engineers? Find out the surname, the name of the author of the book and a list of all author's works by series.

Software++: Must-Have Skills for Software Engineers — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Software++: Must-Have Skills for Software Engineers" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make

Contents CoverbyBrandiMcCannatwwwebook-coverdesignscom Copyright2015CoryBerg - photo 1

Contents

CoverbyBrandiMcCannatwww.ebook-coverdesigns.com

Copyright2015CoryBerg

Allrightsreserved.

Nopartofthispublicationmaybereproduced,storedinaretrievalsystem,ortransmitted,inanyformorbyanymeans, electronic,mechanical,photocopying,recording,orotherwise,withoutthewrittenpermissionoftheauthor.

ToDeb,forreviewingmyworkandbeingpatientduringthemanyhoursIspentwritingthis.

ToJohnandAllen,forlookingatmyearlyrevision,beingpoliteinspiteofit,andquestioningmyassumptions.

ToMichael,Todd,andAlekhya,andeveryonewhoreviewedthisbeforeIfinallycalleditDone,thankyou.

Andfinally,toallmycolleaguesthathelpedshapemyowndirectioninoneformoranother.

Youknowwhoyouare.

Introduction

Thisbookisforanyjuniorormid-levelprofessionalinvolvedinatechnicalcraftwhois lookingtoimprovehisorhernon-technicalskillsinacorporatecontext.Inthisbook,I offeryousomeadviceandperspectivethatIhavegainedthroughoutmyyearsinthe softwareindustry,basedonrealsituations(andrealmistakes)ofmyownpersonal experience.TheseareskillsthatIwishIhadlearnedtwentyyearsago.Thesearemust-haveskills,inthesensethatmasteringthemwillhelpyoutooperatemoreeffectively withinthetechnicalrealmandfarbeyondthatrealm.Witheachmust-have,Iinclude exercisesthatyoucanusetounderlinethepointforyourself.Atthecore,thisisallabout yourawarenessandyourdiligence.Onceyouareawareofyourstrengths,your weaknesses,andtheenvironmentaroundyou,youcanstarttoexperimentwiththese variables,andpossiblyinfluenceoutcomesforyourself,yourlife,andyourcareer direction.

ThroughoutmyentireadultlifeIhavebeenanengineer,focusedonsoftwareasa deliverable.Professionally,Ihaveneverdoneanythingelse.Ihaveworkedwithsomeof thelargestcompaniesintheworld,andIhaveworkedwithstartupsthatwerelessthan twentystrong.IstartedoutbuildingmilitaryandFAAsoftwareproductsthesortwhere

missioncriticalmeantthatactualliveswereatstake.Myintroductiontorealsoftware engineeringwaslessthanspectacularIremembergettingharshlyanddeservedlyabused onmyfirstpeer-to-peercodereview.Thoselessonstranslatedintoincreaseddisciplinein myownpractices.Iwasluckyenoughtohaveexperiencedcolleaguesaroundwhoguided mealongtheway,sometimesinpositivewaysandsometimesinnegativeways.Idecided thatthebestwaytohonorthosepeopleistosharesomeofthemoreimportantlessons withyou.

Beforewegofurther,Iwouldliketoaddressacoupleimportantpointsofterminology.

Terminology:StrategicandTactical

Thewordsstrategicandtacticalcomefromthemilitary,buttheyarevaluable wordsasabasisforclassifyingcertainelementsofthecorporateworld.Ifyouarejust startingoutinyoursoftwarecareer,youareprobablyfocusedontacticalconcerns:the coding,theproduct,andtheimmediate,short-termdeliveries.Youareexpectedtoapply yourtechnicalskilldirectlytothejobathand.Strategicwork,ontheotherhand,involves abroaderperspective,thinkinginlargerscopesandhigherlevelsofabstraction,often involvinglongertimeframes.Inyoursoftwarelife,youmayexperienceanevolutionof yourcompany.Mostcompaniesstartoutasverytactically-oriented.Theyrelyonthe short-termskills,creativity,andfasttimetomarket;thegoalsaretobuildrevenue, capitalizeonopportunities,andsoforth.Iftheyaresuccessful,suchcompaniesevolve intomorestrategicfocus-certainlytheystilldeliverproduct,butitiswithconsideration ofalonger-termplan.Similarly,yoursoftwarecareermightevolveaswell.Youmay choosetomovefromaskilledtechnicalrole,toamoreabstract,broad-thinkingoperator withabig-picturefocus.Mypoint:youshouldrecognizethattherearetacticalconcerns, andtherearestrategicconcerns,andthesethingsareoftenregarded,used,analyzed,and executedverydifferently.Movingfromtacticalconcernstostrategicconcerns(andvice-versa)canbeverychallenging,andthesamecanbesaidformovingfromacompanyat oneleveltoacompanyatanother.Thegoodnewsisthis:yourbasisintechnical capabilitycanserveyouwellineithercapacity.

Terminology:Engineers,Developers,andProgrammers

Thesoftwareindustryhassomeinterestingchallengesthatsetitapartfromclassic engineeringdisciplines.Therehasalwaysbeendebateabouttheuseofterminology betweenthetermssoftwareengineer,softwaredeveloperandprogrammer(among otherterms.)Inthisbook,IwillgenerallyusethewordengineerbecauseIaman engineer.Historically,theadditionofthewordengineerimpliedacertaindegreeof professionalbehavior,capability,andoftenliability.But,whileIhaveanengineering degree,someofthebestsoftwarepeopleIhaveworkedwithdonot.So,forthepurposes ofthisbook,Iwillsetasidethedebatesandstartfromthebasisthatweareinthe technicalrealmbecauseweenjoythework.Thefactthatyouarereadingthisbook impliesthatyouareembarkingonyourownjourneytohoneyourskillsandexpandyour horizons.Thereisnothingmoreengineeringthanthat.

OrganizationofthisBook

Thisbookisarrangedinthreeparts.Thefirstpartisaboutyouandyourownskills.

Thesecondpartisabouthowyourelatetoyourcolleagues.Thethirdpartisaboutyour placewithinanorganizationwhichcouldbethecompanyyouworkfor,atrade association,andsoon.Thisarrangementisdeliberate;itisbasedonthephilosophythatif youunderstandyourself,thenyouareinabetterpositiontounderstandotherssomething Ihavefoundtobeatruism,howeverchallengingattimes.Youdonthavetoreadthis bookfromfronttoback,likeanovel;youmaycomebacktoitfromtimetotimeandseea slightlydifferentinterpretation,dependingonwhereyouareinyourcareer.

Letsgetstarted!

PartI:AboutYou

Skill#1:AlwaysHaveaDefinitionofDone

Withinmostorganizations,engineersarepartoftheteamthatbuildstheproduct,service, structures,etcetera.Assuch,thenumberonepriorityoftheengineeristodeliveronobjectives.Ifyoutakethejobseriously,youneedtomakesureyoudothis.However,to doitsuccessfully,youmustunderstandtheDefinitionofDoneforyourspecific situation.

TheDefinitionofDonereferstothesetofconditionsthatdefineasuccessfulend result.Theseconditionsarethecriteriabywhichyoudeterminewhenyourprojectis

finished.Strangelyenough,thesesuccesscriteriaareoftenunclear,ill-defined,or assumedtobeobviousattheriskofgoingtotallyunidentified.Indeed,projectscanhave hugenumbersofwell-writtenrequirements,andstillresultindismalfailurebecause nobodyconsideredwhatitmeanttobesuccessful.So,theDefinitionofDoneisnotthe sameastheprecisionofyourprojectrequirements.TheactualDefinitionofDonecan takemanydifferentforms,anditcanchangeasyourprojectevolves.Atsomecompanies, theDefinitionofDoneisnicelycapturedintheformofaproductmanagement-level

marketrequirementsdocument.Ontheotherextreme,itisleftasasetofassumptions thatmightnotbecommunicatedtothedevelopmentsideoftheorganization.

MypersonalpreferenceforexpressingaDefinitionofDoneistoformulateasimple setofdirect,high-levelstatementsthatareagreedbetweenbusinessandtechnicalteams.

Thissetofstatementsbecomesadeliverablesetofassumptionsinthesamemanneras therequirementsthemselves.Thisisbestagreeduponearlyintheprocess,butit sometimeshappensmid-stream.Asareal-worldexample,imaginethatyouareinyour secondlastiterationofaproject,andyouthoughtyouknewtheexpectationsforgo-live

-onemonthforfinalintegrationtesting,andanicegradualramp-upofnewcustomers.

ThenthebusinesssaysChangeofplan,wearegoingtosignup50,000customersinthe firstweek,andtaketwoweeksawayfromthatintegrationtesting.Didthefunctional requirementschange?No,althoughonecouldarguethatthenon-functionalrequirements

-iftheywerecaptured-changed.ButtheDefinitionofDoneforthisphaseof developmenthascertainlybeenmodified.Youhadbetterputsomeemphasison performanceandscalabilitynow,evenifthatmeanstradingoffthelastbitsof functionalityinyourlastiteration.Byextension,thismeansyoushouldhaveadirect, open,honestconversationwithyourbusinesscolleagues,becausetheyareprobablygoing tohavetomakesometoughcompromisesonfunctionality.Thatconversationshould resultinamodifiedDefinitionofDonethatiswrittenandsocializedtothekey stakeholders.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Software++: Must-Have Skills for Software Engineers»

Look at similar books to Software++: Must-Have Skills for Software Engineers. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Software++: Must-Have Skills for Software Engineers»

Discussion, reviews of the book Software++: Must-Have Skills for Software Engineers and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.