Cum am decis costul Pulsul Echipei (ep. 8)

Episodul precedent aici

Unul dintre primii pași pe care i-am facut când m-am hotărât să dezvolt acest produs a fost să-i calculez potențialul (detaliat aici). Foarte rough vorbind, am ajuns la un potențial de 49.000 de companii (cu o medie de 22 angajați) care ar putea deveni clienți.

Fiind un software care se bazează pe costuri către terți în funcție de gradul de utilizare (ex: mai mulți angajați -> mai multe mail-uri trimise -> cost operațional mai mare), e oarecum logic să setez și eu prețul tot pe baza gradului de utilizare. Mai exact în funcție de numărul de angajați pe care îl are firma-client (angajați înscriși efectiv în Pulsul Echipei).

Un eBook foarte bun pe care l-am citit pe ideea de setare a prețului pentru software se numește Don’t just roll the dice, Neil Davidson.

Ce am făcut?

Cel mai simplu (dar nu cel mai inspirat) lucru pe care aș fi putut să-l fac era să ma uit la prețurile competitorilor, însă nu am găsit niciunul din România. Am descoperit cel puțin că și cei din afară folosesc același mecanism bazat pe numărul de angajați.

Înainte de orice alt software, mi-am adus aminte că principalul meu competitor este totuși întâlnirea face2face între manager-angajat. O acțiune ușor de evaluat în bani pentru că mănâncă din timpul a 2 angajați care ar putea să producă în intervalul respectiv.

15 minute pe săptămână, timp de 46 săptămâni înseamna 11h/an din timpul unui angajat. La o estimare de cost de muncă de 10e/oră pentru un angajat ajung la concluzia că evaluarea săptămânală pentru 1 angajat costă 110e/an.

La o companie cu o medie de 20 de angajați (cei din targetul meu) înseamnă un cost de 2200e/an.

Regula de 10x

Există în industria de SaaS această strategie numită “10x rule for saas pricing” care spune că ar fi indicat să-ți stabilești prețul de 10 ori mai puțin față de câți bani economisești clientului. Se zice că funcționează tocmai datoria impactului (de 10 ori mai puțin) pe care-l are în mintea clientului. Cu greu spui NU unei astfel de oferte.

Concluzia

Având toate aceste informații am ajuns la concluzia că Pulsul Echipei va costa 1.5e/angajat (cel puțin în primele luni). Asta ar însemna 30e/lună sau 360e/an pentru o companie cu 20 angajați.

Pentru a face vizitatorii site-ului să înțeleagă mai ușor această regulă de 10x, chiar în pagina de pricing, în funcție de câți angajati selectează, pot vedea numărul de ore salvate.

În loc de un sistem de free trial (care venea cu alte complicații) am luat decizia să ofer gratuit accesul pentru companiile cu maxim 5 angajați. Am ales acest lucru drept o variantă rapidă de a testa sistemul indiferent de mărimea companiei (poți testa doar cu un departament de ex.) și oricum câștigul era destul de mic pentru astfel de clienți mici, așa că îl voi considera un cost de marketing (poate angajații rețin sistemul și vorbesc despre el cu prieteni care lucrează în alte companii mai mari care pot ajunge la un moment dat să devină clienți).

Ultimele pregătiri înainte de lansare…

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Site-ul și aplicația prind viață (ep. 7)

Episodul precedent aici

Dacă la alte proiecte din trecut în primă fază mă apucam de zona de aplicație lăsând site-ul de prezentare pe final, de data asta am făcut invers. Partea de vânzare e cel puțin la fel de importantă ca și produsul în sine și exercițiul pe care l-am făcut scriind și structurând conținutul site-ului simt că mă va ajuta în partea de UX al aplicației. Chiar în timp ce scriam mi s-a făcut și mie mai clar în minte despre cum va funcționa.

Design-ul de la care am plecat e cel despre care am povestit în episodul trecut și astea sunt paginile cele mai importante pe care le-am făcut.

Sunt conștient că nu e cel mai bun copywrite pentru un astfel de site dar îmi era greu să apelez la un freelancer și să-i explic ce trebuie vândut, fără a avea aplicația finalizată.

Tot în acest pas am realizat și paginile funcționale (register, login, recuperare parolă) și întreg flow-ul cu verificare adresă de mail, schimbare parolă, mail de bun venit etc.

Apropo de aplicație, cam asta e si wireframe-ul în jurul căruia va fi creat restul conținutului pentru fiecare secțiune în parte.

Acum va urma partea cea mai costisitoare dpdv. timp, practic trebuie să iau fiecare secțiune din partea stângă și să ma gândesc ce operațiuni va necesita, cum comunică cu alte secțiuni și bineînțeles să fac toate testele necesare să mă asigur că funcționează așa cum a fost gândit.

Cum am decis cât va costa accesul în aplicație …

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Cum am făcut design-ul Pulsul Echipei (ep. 6)

Episodul precedent aici

În primul rând trebuie făcută clar separarea dintre site-ul de prezentare (marketing site) și interfața aplicației. Obiectivele lor sunt diferite așa că abordarea și modul de lucru sunt diferite. Pentru această poveste mă voi rezuma doar la ce ține de aplicație.

Secret: nu mă pricep la design web

Recunosc un design bun, extensibil, scalabil dar nu am răbdarea necesară să-l fac eu. Îmi plac mai mult activitățile cărora le pot vedea rezultatul mai rapid, de exemplu să scriu cod timp de 5 minute, să dau save + refresh și să vad că am o filtrare funcțională.

Din fericire există pe internet și oameni fix opuși mie, cărora le face plăcere să-și vadă ideile puse în Photoshop și mai apoi în browser, fără a se aștepta la a avea un produs finit. Oamenii aștia apelează la site-uri de tipul ThemeForest unde își pun la vânzare creațiile (template-uri html) la prețuri între 10-100$.

Primul criteriu pe care-l caut la un astfel de template e să fie bazat pe Bootstrap. Cunoscând acest framework, îmi va fi mult mai ușor să aduc modificări template-ului sau să creez noi elemente.

Știind din episodul trecut cam ce fel de operațiuni vor face utilizatorii aplicației, știu deja la ce fel de template-uri să mă uit, mai ales că majoritatea oferă opțiunea de preview cu toate paginile/elementele disponibile. Nu caut template-ul perfect ci unul care să acopere 70-80% din flow-urile de care am eu nevoie.

30 minute mai târziu l-am ales pe acesta la doar $20.

Acum că știu și cum va arăta, e momentul să fac un plan detaliat de lucru (bazat pe constrângerile explicate episodul trecut) și să trec la treabă.

Logo-ul

E util ca înainte să ne apucăm serios de lucru să avem și logo-ul gata. Logo-ul va da paleta de culori de a aplicației, feeling-ul general și tonul în textele pe care le vom scrie.

Inițial am făcut chiar eu 2 variante de logo-uri (primele 2 de mai jos) dar într-un final am apelat la un grafician freelancer care a făcut varianta finală (ultima).

Integrarea design-ului cu programarea…

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Primele linii de cod Pulsul Echipei (ep. 5)

Episodul precedent aici

A trecut mai bine de o săptămână de la decizia de a dezvolta acest proiect și încă nu s-a scris nicio linie de cod. Asta nu înseamna că nu s-a muncit ci doar că munca a însemnat research, analiza concurenței și conturarea unei strategii a ce vrem să se întâmple când o companie decide să folosească Pulsul Echipei.

Părțile implicate

Primul pas înainte de a putea avea o listă clară de task-uri de programare e să decidem structura bazei de date și entitățile implicate. În această etapă stabilim relațiile dintre entități și gândim în detaliu de ce informații avem nevoie pentru fiecare entitate. Dacă sunt informații pe care trebuie să le preluăm de la utilizatori, le oferim noi sau le preluăm de la terți.

Nu voi arăta efectiv structura bazei de date dar schema de mai jos oferă o privire de ansamblu a acesteia.

entitățile implicate

Stabilim ce va putea să facă utilizatorul

În cazul nostru utilizatorul principal este angajatorul, așa că a venit momentul să ne gândim la toate operațiunile pe care va putea să le facă, însă fără a intra în detaliu.

  • register
  • login
  • forgot password
  • pagina companie
  • schimbare parola
  • manage abonament
  • manage angajati (list, add, edit, delete, add to segment)
  • manage segmente (list, add, edit, delete)
  • manage chestionar (list, add, edit, delete, raport raspunsuri)
  • manage kpi (list, add, edit, delete, raport evolutie)

Pentru angajat singura activitate ar fi cea de a răspunde la chestionar.

Fiind un software care se bazează pe ideea de automatizare, ca și creatori trebuie să luăm în calcul și aceste activități.

  • reminder cand expiră abonamentul
  • trimitere chestionar către angajat
  • retrimitere chestionar către angajat
  • reminder cu rezultatele către angajator

Prioritizare

Cu toate aceste activități de mai sus în minte, deja se poate stabili ordinea pentru fiecare pas al dezvoltării. De exemplu nu poți face sistemul de trimitere chestionar înainte de a avea gata partea de creare a unui chestionar. Și nu poți face partea de creare a unui chestionar dacă nu e gata partea de management al angajaților… ai prins ideea.

Cum va arăta interfața…

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Tehnologia din spatele Pulsul Echipei (ep. 4)

Episodul precedent aici

Fiind un software B2B, putem spune că problemele de care ne vom lovi sunt puțin diferite decât ale unui site adresat lumii large. Prioritare în orice fel de proiect ar fi siguranța datelor, timp de încărcare rapid, accesibilitate pe orice tip de device și o rată de disponibilitate a serviciului cât mai aproape de 100%. În cazul nostru e puțin probabil să avem un spike major de accesări sau să fim nevoiți să găzduim și să administrăm cantitați mari de date.

Stocarea informațiilor

Structura majoritară fiind una bazata pe ierarhie și relații (companie -> chestionar, companie -> angajat, chestionar -> angajat etc.) prima varianta este MySQL. O companie cu 20 de angajați estimez eu că va consuma ~10.000 rânduri/an într-o astfel de bază de date.

Proporția operațiilor va fi de 80% citire și doar de 20% scriere iar căutarea prin aceste date va fi practic inexistentă, datele fiind afișate în rapoarte sub forma agregată fără prea multe interogări complicate. Cu indecșii corect configurați, e o bază de date care permite milioane de înregistrări pe un server mediu ca și performanță și are și beneficiul că poate fi ușor replicată în timp real.

Trimiterea email-urilor

Dacă mail-urile nu ajung la timp sau ajung în Spam, practic produsul nu poate fi folosit deci e un punct critic al sistemului. Cel mai probabil majoritatea vor opta pentru chestionarul standard (care trimite emailul vinerea la prânz) deci trebuie să existe puterea necesară de a trimite multe mail-uri într-un timp scurt. Pentru asta voi apela un terț precum Amazon SES. În acest fel voi avea puterea de a ști statusul fiecărui email, chiar și atunci când cineva îl marchează ca Spam și voi putea afișa managerilor informația.

Server (hosting)

Ca și putere de procesare, nefiind nevoie de a susține un număr ridicat de vizitatori în același timp, un server cu 16GB RAM și 4CPU estimez că este suficient pentru primele 200 de companii (fiecare cu câte 20 angajați). Sistemul de operare va fi Ubuntu (din experiență primește mai rapid update-uri pentru Apache și PHP decât Centos).

Limbajul de programare

Am dat deja un hint mai sus, este vorba de PHP. Din punct de vedere programare un astfel de soft nu este o provocare tehnică așa că nu are rost să testez noi tehnologii doar de dragul experimentării. Majoritatea operațiilor sunt de tipul CRUD (create, read, update, delete), diferența va fi făcută de UX-ul interfeței (cat de clar vor fi afișate concluziile, cât de ușor reușesc să comunic beneficiile etc).

Frontend

Pentru interfața web, ca framework html voi folosi Bootstrap, acest lucru mă va ajuta să am un singur codebase pentru varianta mobilă și pentru tablete. Scopul e să fac întreg sistemul să fie la fel de ușor de folosit indiferent de dispozitivul de pe care e accesat. Nu va fi o aplicație mobilă în sine ci mai degrabă un (aproape) PWA (progressive web app).

Să trecem la treabă…

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Cum am ales funcționalitățile Pulsul Echipei (ep. 3)

Episodul precedent aici

Ideea de bază este una foarte simplă: angajații să primească periodic (în fiecare săptămână) un scurt sondaj cu 1-2-3 întrebări referitoare la atmosfera de la job. Trimiterea se va face pe email și sms, răspunsurile sunt anonime iar managerul poate vedea un raport agregat cu toate răspunsurile.

Obiectivul principal e ca managerul să aiba o privire de ansamblu asupra implicării angajaților, a relațiilor de colaborare dintre ei sau a performanței.

Primul pas a fost să ma gândesc cine va folosi acest sistem, ce probleme ar putea întâmpina și ce temeri ar putea avea.

Angajatorul

Încercând sa-mi imaginez cum ar folosi Pulsul Echipei o companie cu 20 de angajați și alta cu 800, am realizat că va fi nevoie de o opțiune de import a angajaților (nume, email, telefon) și una de segmentare a acestora (pe departamente, regiuni, nivel de senioritate etc). Adică angajatorul va avea libertatea să aibă chestionare diferite cu setări și obiective diferite pentru fiecare grup de angajați.

Pe ideea de a scăpa de cerințe suplimentare și personalizări, angajatorii vor trebui să aibă control în a decide ziua, ora și periodicitatea trimiterii chestionarelor.

Din punct de vedere al interpretării rezultatelor, va fi nevoie de niște KPI-uri ușor de înteles și cărora să le poți urmări evoluția de-a lungul timpului. Asta înseamnă că fiecărei întrebare (indiferent că e scrisă de angajator sau aleasă din cele prestabilite) trebuie să-i fie atribuit un obiectiv. Asta bineînțeles se aplică doar întrebărilor de tipul “Dă o nota de la 1 la 10…” pentru că vor exista și întrebări de sondare cu una sau mai multe variante de răspuns sau chiar întrebări deschise “Ce părere ai despre…”.

Angajatul

Pentru a lua în serios chestionarul și a răspunde el, angajatorul va trebui sa anunțe în companie că angații vor începe să primească mailuri sau sms-uri periodic. O provocare pentru mine e să fac aceste chestionare să fie ușor de completat pe orice gen de dispozitiv.

Un alt aspect e încrederea, trebuie să-i conving cumva că răspunsurile vor fi anonime. Mă gândesc să fie o bifă prin care să aleagă dacă răspunsul să le fie anonimizat sau nu.

Deasemenea mă gândesc să fac mai dinamice cumva mail-urile, tocmai pentru a nu se crea o rutină cu aceleași întrebări în fiecare săptămână și același design. Poate ceva gamification bazat pe timpul de răspuns.

Administrator

Nu las deoparte nici opțiunile care mă ajuta pe mine ca administrator să pot face administrarea platformei sau să pot rezolva diverse situații de suport. E clar că trebuie să am acces la listele de conturi (angajați și angajatori) și chestionarele lor (către cine a fost trimis și cine a răspuns sau nu). Tot aici trebuie luat în calcul și management-ul abonamentelor, opțiune de upgrade/downgrade, download factură etc.

Alegerea tehnologiilor

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Research pentru viabilitatea ideii Pulsul Echipei (ep. 2)

Episodul precedent aici

Timp de mai bine de 1 an cât a fost integrată în eComJobs, această opțiune a fost folosită de 18 de companii cu număr de angajați între 5 și 25. Feedback clar pentru acest lucru nu am avut de la ei, nici nu am insistat ce-i drept, focusul a fost întotdeauna pe a livra rezultate pentru core business (recrutarea).

La un moment dat mi-am dat seama că nu mai lansasem un produs nou de câteva luni și mi-a trecut prin minte că aș putea să dezvolt pulsulechipei.ro ca să nu pot spune că n-am încercat dacă tot am avut ideea și am făcut deja un MVP.

Potențialul

Deși undeva în mintea mea știu că ar exista destul de multe companii care s-ar încadra în tipologia clientului, am zis să mă documentez mai temeinic și să aflu câte companii din industria de servicii există în România și câți angajați au. Am dat peste articolul acesta cu informații din 2017 și am aflat că pe atunci existau 245.000 de companii cu 1.4 milioane de angajați. Asta înseamnă o medie de 5.7 angajați dar distribuția probabil păstrează principiul Pareto așa că mă aștept ca 20% dintre companii să aibă 80% dintre angajați. În teorie aș putea avea ca și clienți un număr de 49.000 companii cu o medie de 22 angajați.

Cine sunt competitorii?

Deși nu e un alt business, competitorul principal este chiar întâlnirea 1 la 1 pe care managerul o are cu fiecare angajat în fiecare săptămână. Avantajul meu competitiv ar fi în primul rând timpul economisit de către manager. Pentru a vorbi cu 20 de angajați în fiecare săptămână, investiția de timp (la o medie de 10 min./om) ar fi de 200 min./săptămână, adica 13h/lună adică 156h/an. Pe când a folosi Pulsul Echipei se rezumă la maxim 1h/săptămână și alte beneficii pe care urmează să le exemplific în următoarele episoade.

Alte business-uri similare n-am descoperit deocamdată în România, dar sunt convins că există implementată o opțiune similară prin diverse aplicații de HR, mai mult sau mai puțin cunoscute.

Mi-a fost ușor să descopăr unelte similare de prin afară folosind o simplă căutare pe pulse survey. Din primele 2 pagini, cele care mi-au atras atenția sunt:

Pasul următor a fost să-mi fac cont pe fiecare din site-urile de mai sus și să le analizez site-urile și modul de comunicare (în bloguri, social media).

Cum va funcționa efectiv Pulsul Echipei …

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.

Nașterea unui proiect web: PulsulEchipei.ro (ep. 1)

Am dezvoltat până acum sute de site-uri și aplicații web însă tot timpul focusul era pe munca efectivă (pentru că de acolo venea entuziasmul) și nu simțeam nevoia să documentez undeva ideea de la care am plecat și felul în care am rezolvat anumite hop-uri. De data asta am hotărât să mă provoc și să fac lucrurile puțin mai diferit (mai ales că partea tehnică a devenit oarecum o rutină).

Acest serial va fi unul în mai multe episoade (toate pot fi găsite sub tagul Pulsul Echipei) și care nu va fi publicat în timp real. Adică majoritatea lucrurilor despre care vei citi vor fi deja decise și implementate (practic voi începe să public episoade abia în momentul în care proiectul este deja lansat).

Dacă nu ai răbdare să citești despre toata saga dezvoltării și vrei să vezi produsul finit, îl poți vedea la pulsulechipei.ro dar cred ca te interesează mai mult povestea, nu?

Timeline-ul pe scurt

  • 9 iulie 2018 – cumpărarea domeniului .ro
  • 26 iulie 2018 – lansare ca opțiune extra pe ecomjobs.ro
  • 6 noiembrie 2019 – eliminarea din ecomjobs.ro
  • 11 noiembrie 2019 – start proiectare ca proiect independent
  • 15 aprilie 2020 – lansare beta
  • 1 mai 2020 – lansare oficială

Ideea

La început a fost ecomjobs.ro, un site de joburi dedicat magazinelor online. Una dintre marile provocări în a crește un astfel de business e că trebuie să echilibrezi balanța dintre cerere și ofertă (în cazul nostru magazine online și candidați). Degeaba ai anunțuri publicate dacă nu ai candidați și invers.

Căutând rezolvări pentru această problemă (chicken egg business problem) am dat de un articol care spunea că un bun început e să oferi mici tool-uri folositoare părților cu ajutorul cărora să-i faci să afle de tine și să te țină minte.

Așa am început să mă gândesc la ce fel de probleme au firmele/candidații și cum pot eu să-i ajut cu un astfel de tool.

Am hotărât să încep cu problemele unei firme pentru că o firmă e mai greu de targetat cu reclame plătite decât candidații.

Făcând un mic exercițiu de memorie cu experiența mea prin cele 3 companii prin care am trecut de-a lungul timpului, am concluzionat că e greu pentru un manager cu peste 10 oameni în echipă să fie la curent cu problemele sau bucuriile fiecărui angajat și ca treaba asta s-ar putea rezolva dacă oamenii ar fi întrebați periodic “cum ți-a fost săptămâna la birou?

MVP

În site-ul eComJobs.ro fiecare cont avea opțiunea de a-și administra mai multe companii, așadar opțiunea trebuia să fie disponibilă pentru fiecare companie în parte.

Funcționalitățile gândite pentru acest MVP au fost:

  • administrarea angajaților (add, edit, delete) [companie]
  • optiune de selectare a întrebărilor [companie]
  • sistem de captare răspunsuri [angajat]
  • sistem de vizualizare a raportului săptămânal [companie]

Pentru ca totul să fie cât mai simplu am decis să nu-i las pe angajatori să-și pună ce întrebări vor ei (gândindu-mă ca vor renunța dacă trebuie să facă acest efort mental). Pare simplu să pui o întrebare însă s-au scris cărți (sau cel puțin capitole) despre cum să formulezi o întrebare în mod corect.

Am făcut un research printre chestionare pentru evaluări de personal și am reușit să formulez o listă de 42 de întrebări separate pe diverse subiecte (volum de muncă, munca de echipă, feedback, cultură etc.)

exemplu întrebări

La momentul la care scriu acest articol nu mai am acces efectiv la cum arăta această opțiune în contul eComJobs dar era destul de simplistă: alegeai întrebările și adăugai adresele de email ale angajaților.

În fiecare vineri la ora 14 angajații primeau chestionarul pe email și aveau timp până luni la 12 să răspundă. Managerul primea luni la ora 14 răspunsurile în mod agregat și anonim.

M-am gândit că nu e prea ok ca angajații să primească acest mesaj de la un site de joburi și am decis să cumpăr și să folosesc în comunicarea pentru această unealtă, domeniu pulsulechipei.ro

emailul pe care-l primeau angajații
raportul pe care-l primea angajatorul

Decizia de a-l dezvolta separat…

Dacă ești curios de ce va urma îți recomand să te abonezi cu adresa de email în partea dreaptă ca să te pot anunța când public următorul articol.