My First Internship: Still Searching, Still Building

Nilitumia maelfu ya saa nikijaribu kupata mafunzo yangu ya kwanza ya kazi (internship) katika uhandisi wa programu.

Nilitatua matatizo ya DSA. Niliomba kazi. Nilikumbana na kukataliwa mara nyingi. Baadhi ya kampuni hazikujibu kamwe. Chache zilinialika kwenye mahojiano.

Mahojiano moja yalibadilisha mtazamo wangu. Mhojiwa aliniuliza kuhusu mradi wangu. Aliniuliza swali moja:

"Je, una watumiaji halisi?"

Sikuwa nayo. Nilijenga miradi kwa ajili ya kujifunza. Sikuijenga kwa ajili ya watu.

Swali hilo lilibadilisha mbinu yangu.

Pia nilifeli mtihani wangu wa cheti cha AZ-900. Sikuwa nimejiandaa. Ilionekana kama kikwazo. Niliitilia shaka uwezo wangu. Kisha nikaacha kuzingatia kushindwa. Nilianza kuzingatia maboresho.

Niliacha kutazama tutorials. Niliamua kujenga CloudStash.

Nilitaka kuelewa mifumo ya uzalishaji (production systems). Nilijenga jukwaa la kuhifadhi faili kwenye wingu (cloud file storage platform) nikitumia zana hizi:

• Node.js na TypeScript • PostgreSQL • Redis • BullMQ workers • JWT authentication • Docker • Object storage • Background processing • Real-time upload progress

Kuandika kodi haikuwa sehemu ngumu. Deployment ndiko kulikuwa kugumu. Nilipata changamoto na Docker, environment variables, na miunganisho ya Redis.

Hatimaye nilizindua jukwaa hilo. Nilitegemea watumiaji. Karibu hakuna mtu aliyetokea.

Nilijifunza ukweli mchungu. Kujenga programu ni tofauti na kuwafanya watu watumie programu hiyo. Coding ni sehemu tu ya kazi. Pia unahitaji kuelewa usability, documentation, na uaminifu.

Bado natafuta mafunzo yangu ya kwanza ya kazi. Bado napata barua pepe za kukataliwa. Bado najihisi mwenye wasiwasi.

Lakini lengo langu sasa ni tofauti. Sijengi miradi ili tu kujaza wasifu wangu wa GitHub. Najenga programu ili kutatua matatizo halisi.

CloudStash inaweza isiwe Dropbox inayofuata. Hilo halijali. Ilinifundisha zaidi kuliko kozi yoyote.

Ikiwa unatafuta nafasi yako ya kwanza, kumbuka hili:

• Kukataliwa hakumaanishi kuwa hufanyi maboresho. • Kila mahojiano hukufundisha nini cha kujifunza baadaye. • Kila deployment inakufundisha somo. • Kila bug inakufanya kuwa mhandisi bora zaidi.

Fursa moja ndiyo yote unayohitaji. Bado nasubiri yangu. Hadi wakati huo, nitaendelea kujenga.

Ni kitu gani kilikusaidia kupata kazi yako ya kwanza ya uhandisi wa programu? Je, ilikuwa open source, networking, au mradi maalum?

Chanzo: https://dev.to/asb_it/my-first-internship-still-searching-still-building-1bn1