5.1 Bir az tarix
90-cı illərdə İnternet-Inqilab yeni başlayanda, heç kim internet-servisləri düzgün necə quracağını bilmirdi. Onların bütün funksiyaları dərhal istifadəçilərə təqdim olunurdu, bu isə klassik proqram təminatı hazırlanmasından olduqca fərqlənirdi.
O dövrün ən böyük axtarış sistemi, Yahoo şirkəti, yeni bir yol seçərək Hollivuddan bir yanaşma mənimsəməyə qərar verdi: onların menecerləri hətta Prodüser adlanırdı :) Təəccüblü deyil ki, heç nəyə nail ola bilmədilər. 🤦♂️
Yahoo — digər şirkətləri alma baxımından ən böyük uğursuzdur. Onlara vaxtilə həm Google, həm də Facebook-u almağı təklif etmişdilər. Amma onların "uğursuzluq hekayəsi" Microsoft-un onları 40 milyard dollara satın almaq istəməsi ilə bitmədi, çünki onlar yenə də imtina etdilər. Bir neçə il sonra onları cəmi 3 milyard dollara aldılar. Halbuki 90-cı illərin zirvəsində onlar 200 milyard dollar dəyərində idilər, və əgər Google-u alsaydılar, indi bir neçə trilyon dəyərində olardılar. Yahoo kimi olma!.
İnternet-Inqilab dövründən bəri proqram təminatı hazırlanması ilə bağlı onlarca müxtəlif üsul sınaqdan keçirilib və indi vəziyyət sabitləşib. Standart öhdəliklərə malik standart rollar, standart proseslər və standart proqram təminatı mövcuddur.
Tədris prosesində müasir İT şirkətlərdə işləmək üçün və müasir hazırlıq vasitələri ilə tanış olmaq üçün lazım olan hər şeyi öyrənəcəksiniz.
5.2 Məhsul komandası

Tipik bir inkişaf komandası adətən aşağıdakı şəxslərdən ibarətdir:
- Məhsulun hansı funksiyalara və xüsusiyyətlərə malik olmalı olduğunu müəyyən edən şəxslər
- Product Owner
- Business Analytic
- Bütün bunları reallaşdıran inkişafçılar
- Software Architect
- Backend Developer
- Frontend Developer
- Mobile Developer
- Məhsulun keyfiyyətli işləməsinə görə məsuliyyət daşıyan şəxslər
- QA Automation
- DevOps
Product Owner proqram təminatının inkişafında əsas rola malikdir. O, məhsulun idarə edilməsinə cavabdehdir və inkişaf komandasının ən önəmli tapşırıqlara fokuslandığını təmin edir. Product Owner məhsulun vizionunu müəyyən edir, tapşırıqlar siyahısını (backlog) tərtib edir və prioritetlərini müəyyənləşdirir. Bu, hər bir inkişaf mərhələsinin maksimal şəkildə biznes məqsədlərinə və istifadəçi tələblərinə cavab verməsini təmin edir.
UX Designer məhsulun istifadə üçün rahat və effektiv interfeysinin yaradılmasında iştirak edir. Bu iş istifadəçi ehtiyaclarının araşdırılmasını, prototiplərin hazırlanmasını və interfeyslərin test edilməsini əhatə edir. Bu istiqamət məhsulun istifadəçi ilə qarşılıqlı əlaqəsini təkmilləşdirməyə və onu maksimum əlçatan və rahat etməyə yönəlib.
DevOps mütəxəssisləri proqram təminatının inkişafı və əməliyyat idarəçiliyi proseslərini optimallaşdırmaqla məşğuldurlar. Bu, məhsulun yenilənmələrinin daha sürətli və sadə buraxılmasına kömək edir. Onların işi testlərin avtomatlaşdırılmasını, yerləşdirilməsini və sistemlərə nəzarəti, eyni zamanda infrastrukturun tənzimlənməsini və davamlı inteqrasiya və çatdırılma prosesini (CI/CD) təmin edir.
5.3 Hazırlama komandası
Hazırlama işi birbaşa proqramçılar tərəfindən aparılır. Onları təxmini 5 kateqoriyaya bölmək olar:
- Software Architect
- Backend Developer
- Frontend Developer
- Mobile Developer
- DBA
Rollar və onların funksiyaları komandanın ölçüsündən və məhsulun spesifikasiyasından asılı olaraq dəyişə bilər, amma vəziyyət təxminən belədir:
Software Architect: mürəkkəb proqram sistemlərinin arxitekturasının layihələndirilməsinə cavabdehdir. Architect texniki infrastrukturu hazırlayır, müxtəlif proqram komponentlərinin strukturunu və qarşılıqlı təsir üsullarını müəyyənləşdirir, onların genişlənəbilənliyini, məhsuldarlığını və təhlükəsizliyini təmin edir.
Backend Developer: tətbiqlərin server tərəfində işləyən hissəsini hazırlamaq üzrə ixtisaslaşıb. Backend Developer-in vəzifələrinə məntiqin reallaşdırılması, məlumat bazaları və məlumatların idarəedilməsi sistemlərinin inteqrasiyası, istifadəçi sorğularının emalı və frontend hissəsi ilə qarşılıqlı əlaqənin təmin edilməsi daxildir.
Frontend Developer: web tətbiqlərinin istifadəçi interfeysini hazırlamaq ilə məşğuldur. Bu rol HTML, CSS və JavaScript, həmçinin interaktiv və responsiv interfeyslər yaratmaq üçün istifadə olunan framework və kitabxanalar üzrə biliklər tələb edir ki, məhsulun istifadəçi ilə yaxşı qarşılıqlı əlaqəsini təmin etsin.
Mobile Developer: mobil cihazlar üçün tətbiqlərin hazırlanması ilə məşğuldur. Mobile Developer müxtəlif əməliyyat sistemləri üçün (məsələn, iOS və Android) tətbiqlər yaradır, platformanın xüsusiyyətlərini, cihazların performansını və istifadəçi təcrübəsini nəzərə alır.
DBA (Database Administrator): verilənlər bazalarının idarə edilməsinə cavabdehdir, onların əldə oluna bilənliyini, təhlükəsizliyini və optimallaşdırılmasını təmin edir. DBA verilənlər bazalarının konfiqurasiyası, monitorinqi və xidməti üzrə tapşırıqları yerinə yetirir, həmçinin məlumatların ehtiyat nüsxələnməsi və bərpa strategiyalarını hazırlayır.
GO TO FULL VERSION