Fury Road: Billing Developer's Journey

Laskutuskehitysyrityksen johtajalla on kaksi tapaa rakentaa tiimi. Ensimmäinen on rekrytoida valmiita "senioreita" ja luoda jatkuvasti sellaisia ​​työoloja, jotta he käyttävät taitojaan ja kokemustaan ​​maksimaalisesti, kehittyvät ja samalla eivät joudu tappeluihin. Toinen on luoda tiimi uusien tulokkaiden, keskitason ja ammattilaisten joukosta, jotta he kommunikoivat, vaikuttavat toisiinsa, oppivat ja kasvavat yrityksen sisällä. Vastustan noidankehää a la "ei kokemusta - ei työtä - ei kokemusta" enkä näe ongelmaa aloittelevan kehittäjän palkkaamisessa. Forward Telecomilla on pitkään ollut harjoitteluohjelma, josta on tullut uran ponnahduslauta monille nykyisille työntekijöille.

Nyt kerron sinulle, miten näen laskutuskehittäjän kehityspolun ja missä järjestyksessä sinun tulee hallita ammatillisia taitoja.

1. Opi ohjelmointikieli

Ensinnäkin kuka tahansa. Etusijalla ovat Java, Python ja JavaScript, mutta Ruby, Go, C, C++ sopivat perustietojen hankkimiseen. Kuinka opettaa? Osallistu maksullisiin ja ilmaisiin kursseihin; voin suositella Golangin koulutusta. Jos englannin tasosi sallii, ulkomaisten videoiden katsominen on hyvä lisätaito.

Fury Road: Billing Developer's Journey

2. Ymmärtää käyttöjärjestelmän käsitteet

Käyttöjärjestelmät perustuvat seitsemään komponenttiin, jotka sinun tulee tietää ja osata selittää toimintaperiaate:

  • Prosessin hallinta;
  • Säikeet ja monisäikeinen koodi;
  • Socket (ohjelmistoliitäntä);
  • I/O-lähetys;
  • Virtualisointi;
  • Varastointi;
  • Tiedostojärjestelmät.

Suosittelen Linux-hallinnon peruskurssin suorittamista. Toinen käyttöjärjestelmä jonossa ovat Windows ja Unix.

3. Totu terminaaliin

Analogisesti tyhjän arkin fobian kanssa on pelko tyhjästä mustasta näytöstä, jossa on vilkkuva kohdistin. Sinun on voitettava se oppiaksesi kirjoittamaan hyviä komentoja komentoriville.
Täytyy tietää:

  • Bash- ja KornShell-kuoret;
  • Komennot find, grep, awk, sed, lsof;
  • Verkkokomennot nslookup ja netstat.

Fury Road: Billing Developer's Journey

4. Verkko ja suojaus

Laskutus liittyy läheisesti verkko- ja tietosuojavaatimuksiin. Verkkopalveluita ei voi kirjoittaa ymmärtämättä verkon toimintaa, joten sinun on opittava peruskäsitteet ja protokollat: DNS, OSI-malli, HTTP, HTTPS, FTP, SSL, TLS. Sitten kun kohtaat Connection Refused -virheen, tiedät mitä tehdä.

5. Palvelimet

Tutkittuasi tiedonsiirron periaatteet verkossa voit aloittaa palvelimen toiminnan perusteet. Aloita verkkopalvelimilla: IIS, Apache, Nginx, Caddy ja Tomcat.

Alempana listasta:

  • Käänteinen välityspalvelin;
  • Nimetön välityspalvelin;
  • Välimuisti;
  • Kuormituksen tasapainoittaminen;
  • Palomuuri.

6. Opi infrastruktuuri koodina

Uskon, että tämä vaihe on yksi tärkeimmistä. Sinun on ymmärrettävä kolme laajaa aihetta:

  • Kontit: Docker ja Kubernetes
  • Konfiguroinnin hallintatyökalut: Ansible, Chef, Salt ja Puppet
  • Varmuuskopiointi: Terraform, pilvet.

7. Opi CI/CD

Toinen hyödyllinen taito laskutuskehittäjälle on pystyä luomaan putki jatkuvaa integrointia ja toimitusta varten. CI/CD-alueella on työkaluja, kuten Jenkins, TeamCity, Drone, Circle CI ja muut. Spoileri: laajasti käytetyn Jenkinsin oppiminen riittää aluksi.

8. Ohjelmistojen ja infrastruktuurin ohjaus

Keskeisenä tavoitteena on ymmärtää sovellusvalvonnan perusteet. Tämän alueen työkalut on jaettu kolmeen ryhmään:

  • Infrastruktuurin seuranta: Nagios, Icinga, Datadog, Zabbix, Monit.
  • Sovelluksen suorituskyvyn valvonta: AppDynanic, New Relic.
  • LMS: ELK Stack, Graylog, Splunk, Papertrail.

9. Pilvipalvelut

Lähitulevaisuudessa jokaisella sovelluksella tai ohjelmistolla on pilvivastine. Ennemmin tai myöhemmin kehittäjät kohtaavat pilven, joten lue suosituista pilvipalveluntarjoajista (AWS, Google Cloud ja Azure) ja tekniikan perusteista.

10. Työskentely tietokannan kanssa

Kaikki nykyiset projektit käyttävät tietokantoja, ja kokemus DBMS:stä ja SQL:stä helpottaa aloittamista. Opi kirjoittamaan SQL-kyselyitä, käytä selitystä ja opi miten indeksi toimii. Helpoin tapa on käydä kurssi. Voit myös harjoitella Postgres-dokumentointitaitojasi ja leikkiä replikoinnilla.

11. Paranna pehmeitä taitojasi

Odottamattoman epätavallinen kohta, mutta ei vähemmän tärkeä. Aluksi ole kärsivällinen. Tottut nopeasti sellaisiin tilanteisiin kuin "korjaa rautasi, olet ohjelmoija", mutta sinun on oltava henkisesti valmistautunut uusien projektien käynnistämisen määräaikoihin. Jos olet nollasta vuoteen ohjelmoinnin parissa ja sinua pidetään juniorina, varaudu kritiikkiin ja opettele hyväksymään se, mentorin koodin tarkistus on usein tuskallinen prosessi. Mutta samalla pakollinen taito on kyky puolustaa näkemyksiään ja väittää rakentavasti, toisinaan totuus syntyy väittelyssä. Kehittäjät eivät koskaan lopeta oppimista, ammatissa ei käytännössä ole kattoa, joten oppimiskyky ja HALU oppia uutta ovat kehittymisesi perusta.

Fury Road: Billing Developer's Journey

Minulta kysytään usein, milloin aloittelija saavuttaa keskitason ja milloin häntä voidaan ylpeänä kutsua "senioriksi". Uskon, että tasolta tasolle siirtymähetkeä ei määrätä työvuosien määrästä, vaikka käytännön taidot ovatkin keskeinen kriteeri. Juuri pehmeät taidot määräävät usein kehittäjän kasvun nopeuden: koulutettu ja ahkera aloittelija osaa kirjoittaa laadukasta koodia useilla kielillä ja pystyy työskentelemään tiimissä muutamassa kuukaudessa. Kehittäjä, jolla on 10 vuoden kokemus, ei välttämättä pysty ratkaisemaan epätyypillisiä ongelmia, hallitsemaan tiimiä ja omaa yksipuolisia taitoja.

Näin näen laskutuskehittäjän kehityspolun, näin kasvatamme Forward Telecom -tiimiimme päteviä asiantuntijoita. Ei näytä puuttuvan mitään, mutta olen aina kiitollinen hyödyllisistä lisäyksistä asiaan.

Lähde: will.com

Lisää kommentti