Sinasabi nila na ang mga taong walang teknikal na edukasyon ay walang lugar sa programming. Sinusubukan nilang takutin ka mula sa pag-iisip tungkol sa pagbabago ng karera pagkatapos mong maabot ang 30 taon. Ngunit paano kung sa edad na 30 lamang ay magiging malinaw na ang lahat ng iyong dating kaalaman at karanasan ay humantong sa iyo sa maling destinasyon?

Sa katotohanan, hindi ito nakakatakot. Kahit sino ay maaaring maging programmer sa anumang edad. Narito ang kwento ni PielsLie, isa sa aming mga mag-aaral mula sa St. Petersburg na ang background ng edukasyon ay nasa humanities at nagtrabaho ng 10 taon sa pamamahala at pagbebenta.

Sa oras na isinulat niya ang kanyang kwento ng tagumpay, siya ay 32. Sa humigit-kumulang 5 buwan, naabot niya ang Level 35 sa CodeGym. Gumugol siya ng 2-3 buwan sa pag-aaral sa sarili at pagsusulat ng mga proyekto, at ilang buwan pa sa paghahanap ng trabaho. Sa puntong iyon, nakakuha siya ng magandang alok at nakakuha ng trabaho bilang software developer.

HAKBANG 1. Pagkatuto

Ang mga kinakailangan para sa pangunahing pinagmumulan ng pag-aaral ay malinaw: isang nakabalangkas na presentasyon ng Java Core na materyal, maraming pagsasanay, at isang malaking komunidad:

  • sa panahon ng mga panayam, maaaring tanungin ka ng anuman tungkol sa "pangunahing kaalaman" — mula sa bitwise shifting at casting generics hanggang IO at serialization;
  • ang pagsasanay ay sapilitan; maaari mong matandaan ang mga bagay-bagay sa programming kung malalim mong naiintindihan ang materyal at palakasin ito sa pamamagitan ng pagsasanay;
  • At tungkol sa komunidad: kung malutas mo ang isang gawain, magpatuloy at magpakitang-gilas sa mga komento; kung hindi mo ito malutas, maaari kang magtanong, ngunit walang sinuman ang malamang na magbigay sa iyo ng isang handa na solusyon.

Sa lahat ng aspeto, ang CodeGym ay umaangkop sa bayarin para sa pangunahing platform ng pag-aaral. Ang nagtapos ay nagrerekomenda ng boning up sa pamamagitan ng pagbabasa ng mga libro: "Ang parehong Schildt na ito ay pinakamahusay na sumasaklaw sa paksang nasa kamay, at kadalasang naglalahad ng ilang mga punto."

Mga tip para sa mga lumalapit sa kanilang pag-aaral ng Java nang may malinis na talaan

  1. Ang bawat isa na nagsisimula mula sa simula ay nahahanap na ang paglalakbay ay mahirap. Hindi isang malaking porsyento ng mga nagsimulang makaabot sa pagtatapos ng kurso. Ang iyong layunin ay maging isa sa mga nagagawa.
  2. Mararanasan mo ang pinakadakilang sigasig pagkatapos ng isang buwan o dalawa, kapag ang mga gawain ay nagiging mas mahirap at mas kawili-wili. Magtiis.
  3. Ang pinakamahalagang bagay ay ang gumawa ng lingguhang pag-unlad. Pagkatapos magpahinga sa loob ng dalawang linggo, mahirap na bumalik sa saddle, ngunit hindi lahat ay maaaring magsulat ng code araw-araw sa loob ng ilang buwan nang sunud-sunod.

Magtakda ng target para sa iyong sarili, na sinusukat sa mga oras bawat linggo: halimbawa, 15. Maaari kang mag-code ng 1.5 oras tuwing weekday at isa pang 3-4 na oras bawat araw ng katapusan ng linggo, o maaari kang magpahinga ng ilang gabi, ngunit pagkatapos ay ang iyong tataas ang "weekend quota". Kung gagawin mo ito sa ganitong paraan, ang iyong iskedyul ay magiging flexible ngunit pare-pareho. Siyempre, sa ibang pagkakataon ay masusukat mo ang iyong trabaho sa mga tuntunin ng mga natapos na gawain at proyekto, ngunit kapag pinag-uusapan natin ang tungkol sa syntax at pangunahing kaalaman, makatuwirang makitungo sa mga oras.

Sa kabuuan, tumagal ng humigit-kumulang 5 buwan upang makumpleto ang kurso (bago magkaroon ng access sa internship), kabilang ang mga bakasyon at maikling pahinga, at nakamit iyon gamit ang isang karaniwang limang araw na linggo ng trabaho na nag-iiwan lamang ng libreng oras sa katapusan ng linggo at karaniwang araw mula 10 PM hanggang hatinggabi.

Kaya kung mayroon kang isang mas bukas na iskedyul o gumamit ng isang mas mahigpit na rehimen ng pagsasanay, maaari mong pamahalaan nang mas mabilis.

HAKBANG 2. Pag-aaral sa sarili

Sa pag-abot sa Level 35, sa loob ng ilang buwan ay nakapag-iisa niyang ginalugad ang Spring MVC, Spring Boot + Data, Spring Security, Hibernate, jUnit, Maven, Git, at RDBMS, at pinagkadalubhasaan ang SQL at pinagsama ang lahat ng kaalamang ito sa isang pinag-isang kabuuan. Pagkalipas ng anim na buwan, nagkaroon ng mga proyekto ang estudyante na nagbigay sa kanya ng praktikal na karanasan gamit ang mga framework na "matanda na" pati na rin ang isang profile sa Github, na maipapakita niya kung hiniling ito ng isang potensyal na employer.

Paano lumikha ng isang personal na plano sa pag-unlad

  1. Patakbuhin ang mga pag-post ng trabaho para sa junior/middle Java developer positions (o ilang iba pang lugar ng interes) at tingnan kung aling mga teknolohiya at frameworks ang pinakamadalas na binabanggit.
  2. Mangarap at isulat ang ilang mga gawain sa pagsubok para sa kanila. Magtakda ng mga deadline para sa iyong sarili upang ipatupad ang mga ito.

HAKBANG 3. Naghahanap ng trabaho

Ang yugtong ito ang pinakamahaba at hindi kasingkinis ng naunang dalawa.

Pagsusumite ng isang matapat na bagong resume

Pagkatapos makumpleto ang mga personal na proyekto, nagpadala ang mag-aaral ng humigit-kumulang 30 aplikasyon para sa mga bakanteng junior/trainee (sa pamamagitan ng HH, LinkedIn, at mga ahensya ng staffing), na nagpapahiwatig ng pamilyar na teknolohiyang stack sa kanyang resume, kasama ang ilang mga soft skill at katamtamang pagbanggit sa kanyang karanasan.

Nagbunga ito ng dalawang tawag, ang isa ay agad na natapos dahil sa kanyang pre-intermediate na kasanayan sa Ingles (kaya matuto rin ng Ingles). Dalawa pang kumpanya ang nagpadala ng kanilang mga gawain sa pagsubok. Nagkaroon siya ng isang "panayam" na nagresulta sa isang "tatawagan ka namin".

Pagtatangkang makakuha ng internship

Marahil maaari kang makakuha ng karanasan sa pamamagitan ng hindi bayad o may kondisyong bayad na mga internship at kahit papaano ay makakuha ng isang foothold sa isang malaking kumpanya ng IT? Ito ay isang mahusay na diskarte, ngunit bilang ito ay lumiliko out, hindi para sa lahat. Ginawa ng may-akda ng kuwento ang pagsubok na gawain, ngunit hindi ito nakalampas sa huling panayam.

Pagkatapos ng karanasang ito, isinulat ng aming dating mag-aaral na siya ay "medyo nanlumo, at pinahinto ang buong paghahanap ng trabaho sa loob ng halos anim na buwan." Nagtrabaho siya sa kanyang dating propesyon at nagsulat ng ilang aplikasyon para sa kanyang sarili.

Nagpatuloy ito hanggang sa nakatagpo siya ng isang kakilala na kasama niya sa kanyang mga pagkabigo sa paghahanap ng junior dev job. Sa oras na iyon, ang kanyang kakilala ay nagtatrabaho bilang isang mid-level na developer, ngunit nagsimula siya sa parehong paraan - sa pag-aaral sa sarili.

Ang kanyang kaibigan ay nagbigay ng ilang rekomendasyon (ilang "cheat", ayon sa may-akda):

  1. Sa isang paraan o iba pa, kumuha ng 6+ na buwan ng propesyonal na karanasan sa iyong resume: mga internship, thesis project, freelancing, malayong trabaho — anuman. Malaki ang maitutulong nito sa yugto kung kailan gagawin ng mga HR folk ang kanilang paunang screening ng resume pile;
  2. Alisin ang salitang "junior" at ang iyong inaasahang suweldo sa iyong resume; iwanan lamang ang "Java developer" at talakayin ang iyong suweldo nang paisa-isa sa bawat kumpanya;
  3. Subukang kunin ang tao mula sa HR na ibunyag ang posibleng hanay ng suweldo bago mo sabihin ang iyong mga inaasahan. Kung ang isang kumpanya ay nag-aalok ng 5,000-6,500 dolyares, at handa kang magsimula sa halagang $2,000, ang ilang pag-hire ng mga gumagawa ng desisyon ay bubuo ng mababang opinyon sa iyo.
  4. Tumugon sa bawat bakanteng trabaho na tumutugma sa stack ng iyong teknolohiya, kahit na kailangan ng 1-3 taon ng propesyonal na karanasan.

At lahat ng ito ay nagtagumpay.

Unang alok

Matapos sundin ng may-akda ng kuwento ang mga rekomendasyon, makabuluhang bumuti ang sitwasyon sa paghahanap ng trabaho.

Una, sa humigit-kumulang 12 bagong tugon, kalahati ay halos agad na natapos alinman sa isang personal na pagpupulong, o isang panayam sa Skype, o isang pagsubok na gawain.

Pangalawa, nagsimulang makipag-ugnayan ang mga HR reps sa sarili nilang inisyatiba — sa pamamagitan ng messaging apps, email, at LinkedIn.

Ikatlo, ang mga kinakailangan sa karanasan sa propesyon ay naging medyo nababaluktot: maraming kumpanya ang handa na makipag-ugnayan sa isang kandidato na hindi nahulog sa tinukoy na hanay ng 1-3 taon ng trabaho sa mundo ng korporasyon.

Ang nasa ibaba ay isang alok para sa isang junior na posisyon ng developer at isa para sa isang mid-level na posisyon na may panahon ng probasyon. Sa kabuuan, tumagal ng dalawang buwan ang paghahanap ng trabaho.

Hindi ka maaaring magsulat ng maraming Java code, pagkatapos ay maghanap ng trabaho sa loob ng mahabang panahon, at sa huli ay mawawala ang lahat.

Ang tubig ay nag-aalis ng bato at, gaya ng isinulat ng may-akda, "kung ang isang 30-taong-gulang na mag-aaral ng humanities ay makakapag-alis nito, kung gayon magtatagumpay ka rin. Ang pangunahing bagay ay huwag matakot sa mga unang tawag sa telepono, mga gawain sa pagsubok, at mga panayam. Ang bawat 'pagkabigo' ay maaaring maging isang pagkakataon upang matuto ng bago tungkol sa iyong sarili at isara ang anumang mga puwang sa iyong kaalaman. At sa bawat oras na makadarama ka ng higit na kumpiyansa."