8 väljakutset CTO-le aastal 2023
Kiirenenud digitaalne ümberkujundamise protsess tähendab, et tehnoloogiajuhtide (CTO), st nende, kes haldavad ettevõtte tehnoloogiaküsimusi, positsioon muutub üha olulisemaks. CTOd...

Iga toote puhul seisame silmitsi paljude kompromisside ja väljakutsetega, mis määravad ettevõtte tuleviku. Kõige olulisemaks dilemmaks on aga tehnoloogia või õigemini tehnoloogia valik, sest see mõjutab kõiki aspekte tulevikus. Käesolevas artiklis tahaksin tutvustada sellise otsuse tegemisega seotud mõistatusi.
Iga toode, seisame silmitsi paljude kompromisside ja väljakutsetega, mis määravad ettevõtmise tuleviku. Siiski on tehnoloogia, või õigemini tehnoloogia valikSee on kõige olulisem dilemma, sest see mõjutab kõiki tuleviku aspekte. Käesolevas artiklis tahaksin tutvustada sellise otsuse tegemisega seotud mõistatusi.
Õige tehnoloogia valimine tootearendus on kriitiline komponent, mis võib oluliselt mõjutada projekt edu. Selles postituses käsitletakse kõige olulisemaid muutujaid, mida tuleb arvesse võtta, kui otsustate sobiva tehnoloogia üle oma tootearendus vajadused. Siin on 5 reeglit õige tehnoloogia valimine tootearenduse jaoks:
1. Projekti nõuete määratlemine
Enne tehnoloogia valimise protsessi alustamist on oluline, et teil oleks põhjalik ülevaade teie projekti vajadustest. See hõlmab probleemi, mida püüate lahendada, sihtrühma, soovitud funktsioonide ja võimalike tehnoloogiliste vajaduste kirjeldamist. Hästi määratletud nõuete loetelu aitab teil hinnata erinevaid tehnoloogiaid teie projekti nõuete suhtes.
Kui teie toode areneb, vajate tehnoloogiat, mis suudab sammu pidada kasvava kasutajate, andmete ja funktsioonide arvuga. Uurige, kui lihtne on tehnoloogiat skaleerida ja kas skaleeruvad ressursid on kättesaadavad. Skaleeritava tehnoloogia kasutamine tagab, et teie toode suudab tulevikus kasvada.
3. Paindlikkus ja kohanemisvõime
Tootenõuded võivad aja jooksul muutuda, mistõttu on oluline valida tehnoloogia, mis suudab nende muutustega kohaneda. Otsige tehnoloogiaid, mis võimaldavad hõlpsasti lisada uusi funktsioone või muuta olemasolevaid, tagades, et teie toode jääb asjakohaseks ja ajakohaseks.
4. Arendaja ekspertiis
Teie ekspertteadmised ja kogemused meeskond erinevate tehnoloogiatega on teie projekti edukuse seisukohalt kriitilise tähtsusega. Tuntud tehnoloogia kasutamine võib suurendada tootlikkust, vähendades samal ajal õppimiskõverat. Kui uus tehnoloogia sobib teie projekti jaoks paremini, veenduge, et teie töötajad on nõuetekohaselt koolitatud ja toetatud.
5. Turvalisus
Andmeturbe ja eraelu puutumatuse kasvava tähtsuse tõttu on oluline hinnata iga tehnoloogia turvaaspekte. Veenduge, et valitud tehnoloogia vastab teie toote turvanõuetele ning kohaldatavatele eeskirjadele ja tööstusstandarditele.
Oma töös programmeerijana olen tegelenud paljude toodete ja paljude CTOs, ja ma suutsin tabada selle töö ja sellega seotud probleemide kõige olulisemaid aspekte, samuti projektide ja tehnoloogiatega seotud raskusi, siin on mõned neist:
Teie toode peab olema väga hästi kättesaadav ning ei tohi põhjustada probleeme rakendamisel ja kasutamisel. Iga tehnoloogia on loodud selleks, et see toimiks hästi õiges keskkonnas, mistõttu on see otsus nii oluline. Üsna riskantne valik oleks C ++ panna kõrgkasutatavasse veebirakendusse maailmas, kus meil on Elixir ja GoLang, nende abil saab luua vastupidavaid ja skaleeritavaid rakendusi. Teisalt, kui me ehitame IOT teenuseid ja meil on vähe ressursse, võib otsus olla teistsugune. Ruby võib olla ka vastus igale eespool nimetatud küsimusele, kõik sõltub kompromissidest ja sellest, millest te rakenduse või veebilehe hooldamisel hoolite.
Igal aastal luuakse palju tehnoloogiaid ja mõned neist on oma loomise ajal revolutsioonilised. Küsimus on selles, kas praegu on õige hetk neid kasutada. Tehnoloogia küpsus ei ole ainult spetsialistide kättesaadavus, vaid põhimõtteliselt see, mida kogukond teeb dokumentatsiooni, raamatukogude, kursuste ja artiklite näol.
Me ei saa võrrelda uute repositooriumide arvu GitHubi jaoks JavaScript koos Ruby jaoks mõeldud versioonidega, kuna JavaScript sisaldab palju uusi suuri raamistikke ja raamatukogusid ning igaühele neist on vaja arendus- ja ehituspakette. Ruby puhul on meil üks juhtiv raamistik ja sellega seotud ökosüsteem; seetõttu on paljud autentimisraamatukogud või API kliendid juba loodud ja hooldatud ning ka nendega seotud probleemid on teada. Seetõttu ei saa meid üllatada, et tehingusüsteem meie pank põhineb Java ja mitte JavaScript ja ExpressJS, ning et ühel teie teada oleval idufirmal on probleeme rakendusarhitektuuri taltsutamisega, sest keegi ei ole nende probleemi selles uues tehnoloogias, mille nad valisid, lahendanud.
Siiski on siin veel trend, sest kõik on kuulnud Perlist või Cobolist, need on iidseid väljakujunenud tehnoloogiaid, kuid kahjuks ei ole need piisavalt moes, et julgustada arendajaid nendega töötama. Trend on oluline tegur talentide ligimeelitamisel, eriti kuna mida suurem on vanusegrupp, seda vähem on programmeerijaid.
IT-projektiga tegelemisel ei kavatse me programmeerida, vaid peame täpselt aru saama, mis toimub. Kõigepealt tasub minna LinkedIn-i ja vaadata, kui palju on teie riigis spetsialiste; see ütleb meile, kui suur on keskkond, millega me tegeleme. Samuti tasub minna Sidur ja kontrollida, kuidas tarkvaramaja turg näeb välja. Peate olema valmis ootamatuks kasvuks ja vabade töökohtade kiireks täitmiseks. Loomulikult ei tähenda potentsiaalsete kandidaatide rohkus kvaliteeti, kuid see lihtsustab talentide hankimist ja oma pakkumisega erinevate spetsialistideni jõudmist.
Samuti peate eeldama, et ettevõtte töötajad on asendatavad; kovisioonijärgsel perioodil on see eriti oluline, sest karantiin suutis blokeerida paljud ettevõtted. Selline lähenemine võimaldab teil vältida ka spetsialistide väljavoolu kriisi ja laiendada tehnilist dokumentatsiooni.
Ülaltoodud punktide kombinatsioon tekitab tegevuskulud, seega kui palju tegelikult maksab rakenduse ülalpidamine ja arendusmeeskond. Me kõik valime meeskonna, mis vastab meie vajadustele, kuid peate meeles pidama kogu rakenduse tagakülge või valima IaaS- ja SaaS-lahenduse teenuste jaoks, mis on toote toimimise jaoks kriitilise tähtsusega.
Iga isehostitud teenuse haldamine on teie jaoks lisakulu ja koormus, mis eemaldab teid eesmärgist. Tootearenduse algfaasis paneb isegi tuntud lahendus, näiteks Netlify või Heroku, kogu keskkonna ühte torusse ja te ei raiska meeskonna aega kõige loomisele nullist.
Pikemas perspektiivis võib valmis infrastruktuur olla odavam kui ratta uuesti leiutamine. Suurt tähtsust omavad tegevuskulud, meeskonna tulemuslikkus seoses antud funktsionaalsusega, tehnoloogia küpsus ja turul saadaolevate töötajate ulatus.