Ohjelmointi

Miltä moderni kehitysorganisaatio näyttää

Työskentelen San Franciscon startupissa. Se, mitä käytämme Piilaaksossa, ei välttämättä osoita koko teollisuutta. Joten kysyin epävirallisesti muutamalta, koko teollisuudelle jaetulta ystävältä, mitä työkaluja he käyttävät selvittääksesi työkalut, joita moderni (mutta ei Piilaakson) kehitysorganisaatio käyttää.

Myönnetään, jos olet harmaassa kennotilassa - tai mikä vielä pahempaa, beige kennotila - et välttämättä ole tekniikan verenvuotoisella, johtavalla tai edes tylsällä, mutta ruostumattomalla reunalla, joten mittarilukema voi vaihdella. Jos kysyt vain Microsoftilta "mitä meidän pitäisi ostaa?" mittarilukema voi taas vaihdella, mutta jopa Microsoft tajuaa, että Git on kuningas ja maailmamme on yhä monimuotoisempi, mikä tekee yksittäisten toimittajien kehitystyökalupinosta vaikeampi omistautua. Kehitystyökalujen osalta se on nykyään monikielinen maailma.

Jos yrität nähdä missä olet suhteessa muihin, tämä artikkeli näyttää sinulle. Jos haluat perustaa uuden kaupan ja ihmettelet: "Mitä kaikki muut tekevät ja minne meidän pitäisi mennä?" niin se näyttää sinulle myös sen.

Selvää on, että nykyaikaiset kehitysorganisaatiot - edes sellaiset, jotka saattavat ajatella olevansa hieman vanhoja kouluja - eivät näytä edes muutaman vuoden takaisilta. Lähitulevaisuudessa meillä on hyvin kontti- / koneoppimispaikka, ja ehkä jopa keskustelupohjainen. Loppujen lopuksi scrums ja devops olivat avaruusolento käsitteitä ei niin kauan sitten.

Mikä on yhteistä nykyaikaisissa kehitysorganisaatioissa

Seuraavat asiat ovat yleisiä useimpien ihmisten kanssa, joiden kanssa puhuin. Ne edustavat ei-pyrkivää ohjelmistokehityksen tilaa.

Sähköposti on kuollut, Slack on kuningas

Vakavasti, mikään ei ole saavuttanut laajaa hyväksyntää niin nopeasti kuin Slack. Toki joissakin paikoissa käytetään HipChatia tai muita Slackin kaltaisia ​​asioita, mutta Slack on se, miten organisaatiot toimivat nykyään. He ovat chattailevia, ja nyt chat on haettavissa.

PCM ja CVS ovat kuolleet; kaikki rakeet Git ja GitHub

Tuolloin kooditarkastukset olivat vaikeita ja lukot pessimistisiä. Olen työskennellyt maailmanlaajuisissa projekteissa, joissa tarkastukset transatlanttisella kaapelilla kesti ikuisesti. Emme puhu kasseista.

Nyt versiohallinta on jaettu, ja Git - vaikkakin huomattavasti vaikeampaa käyttää kuin aikaisemmat työkalut - oli niin askel eteenpäin, että Git on saavuttanut täydellisen hallitsevuuden. \

Jokaisella on Mac

Olen vastahakoinen Mac-käyttäjä. Jos se riippuisi minusta, käytän Ubuntu Linuxia paremmalla laitteistolla. Yritykseni maksama tietokone on kuitenkin Mac. Enkä ole yksin. MacOS on nopeampi, vaikkakin paisunut ja hankala kuin Windows, ja minulla on kaikki tutut työkalut, kuten SSH, mutta kaipaan silti Linuxia.

Jira on edelleen paisunut kuningas

Jira saattaa ikääntyä, ja voi olla vaihtoehtoja, kuten BaseCamp ja avoimen lähdekoodin Open Project. Mutta Jiran vahvuus on, että jos olet siinä, et lähde. Olet jo perehtynyt siihen. Sillä on markkinat laajennetulle toiminnallisuudelle. Se kytkeytyy useimpiin asioihin, ja useimmat muut asiat tukevat sitä.

Jenkins palvelee edelleen meitä

On huipputasoja, kuten Travis-CI ja myös rans, kuten Jira-luojan Atlassian's Bamboo, mutta loppujen lopuksi Jenkins on edelleen kärjessä jatkuvan integraation ja testausympäristömme käyttöönoton yhteydessä.

AWS on missä se on

Amazon Web Services ei ole edullisin pilvialusta. Se ei ole helpoin käyttää. Mutta se on varmasti kaikkein monipuolisin, ja useimmat ihmiset tuntevat sen. Olen tavannut ihmisiä, jotka käyttävät Google Compute Enginen tai Microsoft Azurea. Olen käyttänyt niitä itse projekteissa, mutta oletuksena ihmisten käyttämä alusta on AWS.

Sisäinen alusta on edelleen VMware

Yrityksen palomuurin takana oleville kehittäjille, joissa pilvi on vain unelma, he ovat edelleen VMwaressa ja tekevät asioita VMware-tavalla. Palvelujen tarjoaminen on edelleen odotusta, ja SAN-suorituskykyä on edelleen arvaamaton.

Ketterä kehitys on enimmäkseen scrum-ish

Kaikki tekevät jotain rummun kaltaista, mutta eivät rumpuja tarkalleen, ja harvat ovat oikeutetusti vakuuttuneita siitä, että he tekevät ketterästi oikein tai että heidän "ketteränsä" on todella ketterä - eivätkä "lastikulttisen ketterän" tai kaaoksen toisella nimellä.

Kurinalaisuus, projektinhallinta ja tuotehallinta ovat edelleen alitaitoisia, alipalkkaisia ​​ja alipalkittuja.

Mikä on trendillä nykyaikaisissa kehitysorganisaatioissa

On monia johtavia käytäntöjä, joista puhumme - devops, Docker-kontit, Kubernetes-kontti, Windows-säilöt, pilvikehitysalustat (PaaS), omnidevice-kehitys, koneoppiminen, uudet kielet, kuten Kotlin ja Google Go, ja niin edelleen. ei ole vielä saavutettu maailmanlaajuista adoptiota.

Kontit

Olipa kyseessä Docker tai sen mahdollinen perillinen Kubernetes, kaikki eivät käytä kontteja.

Ensinnäkin, jos sinulla on melkein koko ajan kuormitusta, sen suorittaminen AWS: llä on ylimääräistä. Kustannusetusi tapahtuu vain, jos pystyt todella jakamaan resursseja.

Toiseksi, konttien käyttö tekee ohjelmistostasi ylläpidettävämmän, mutta se tekee myös rakennus- ja käyttöönottoprosessistasi hitaamman ja monimutkaisemman.

Koneoppiminen

Kova osa on tunnistaa, missä voit käyttää koneoppimista (tekoälyn osajoukko) ja yhdistää tiedot muotoon, joka antaa sinun käyttää koneoppimista.

Jotkut ihmiset käyttävät sitä kannen alla ostamissaan tuotteissa, mutta heillä ei ole tietojenkäsittelytietojen asiantuntemusta sen hyödyllisyyden osoittamiseksi. Pula asiantuntemuksesta markkinoilla on myös tehnyt koneoppimisen omaksumisesta vaimeamman kuin hype osoittaisi.

Chatopit

Ihmiset ovat kiinnostuneita chatoppeista, mutta kukaan, jonka kanssa puhuin, ei vielä tee sitä.

$config[zx-auto] not found$config[zx-overlay] not found