Why building sustainable career paths (in IT, in Romania) is essential

 

For 18 years, between 2004 and 2022 (2023 and still ongoing, we’re experiencing a consolidation and maturing phase), the Romanian IT industry boomed, growing exponentially, having now more than 200,000 employees who contribute to more than 8% of the country’s GDP. Romania is now an established IT hub, continuing to attract significant international investment, and is recognized for its value proposition on talent, quality, price and IT infrastructure.

However, behind any success story lies a pressing issue: the rapid and sometimes premature career progression of middle and senior managers that leaves both individuals and organizations vulnerable to long-term challenges.

In the rush to meet market demands and capitalize on the explosive growth of technology, many IT professionals in Romania are “burning stages,” advancing too quickly through their career paths. While rapid growth might seem like an exciting opportunity, it often leads to significant drawbacks, especially in terms of maturity, skill depth, and managerial competency.

The Fast-Track Career Dilemma

The Romanian IT market, like many global tech hubs, is currently facing an imbalance between the pace of individual career progression and the actual experience required to perform well at higher levels. Driven by a talent shortage and the pressure to deliver, companies are pushing junior developers into senior roles far too quickly. Similarly, professionals are racing up the career ladder without fully mastering each stage of their development.

A typical example involves a software developer who, after only two or three years of experience, might find themselves in a senior position or even managing a team. This swift progression might be financially rewarding in the short term, but it often overlooks the depth of experience, problem-solving capabilities, and leadership skills that are critical to long-term success.

Lack of Maturity and Managerial Competency

One of the biggest challenges in this accelerated environment is the lack of maturity in both technical skills and soft skills. With too little time to fully understand the nuances of their work, many young IT professionals miss out on developing the problem-solving techniques and strategic thinking that come with experience.

This lack of maturity is even more visible when these individuals are pushed into management roles. Leadership in IT is not just about knowing the technology but also about managing people, projects, and long-term business strategies. However, in Romania’s fast-moving IT industry, many managers haven’t had the chance to cultivate these skills. The result is a workforce that often lacks the emotional intelligence and managerial expertise needed to guide teams effectively through complex projects.

Challenges Faced by IT Managers Without Proper Experience

The volatile market dynamics in Romania’s IT sector highlight these issues, as many managers are now into positions of leadership without proper training or experience. And sometimes without organizational os senior leadership support. They are expected to lead teams and make critical decisions without having developed the necessary managerial tools or having had enough time to fully understand the intricate dynamics of the business.

Some of the key challenges these managers may face:

  1. Poor Leadership Skills: Leadership is about more than giving instructions. It involves motivating teams, resolving conflicts, and fostering collaboration. Without the benefit of experience, many new managers struggle to provide effective leadership, leading to reduced team morale and inefficiencies.
  2. Lack of Strategic Thinking: Effective managers must think long-term and align their team’s efforts with the broader business goals. However, individuals who advance too quickly often lack the necessary foresight and are more focused on immediate, tactical challenges.
  3. Inadequate Technical Depth: In an industry where technology is constantly evolving, depth of knowledge is crucial. Managers who have risen too fast may lack the technical know-how needed to guide their teams through complex technical problems, leading to delays and technical debt.
  4. High Turnover and Burnout: Teams led by inexperienced managers are more prone to high turnover rates. Employees who don’t feel adequately supported or guided are likely to seek better opportunities, creating a cycle of instability. The rapid pace also leads to burnout as individuals are tasked with responsibilities they are not yet equipped to handle.

Long-Term Implications for the Romanian IT Market

The consequences of this rapid progression aren’t just personal—they have industry-wide implications. As more professionals aritificially become managers and leaders without the necessary experience, there is a growing gap between the skillsets required for senior roles and the abilities of those who fill in the the roles.

This trend threatens the long-term sustainability of the Romanian IT sector. Projects may suffer from poor execution, leading to reputational damage. Additionally, without experienced mentors, the next generation of IT professionals is at risk of continuing the cycle of rushed development, perpetuating the same problems.

Building Sustainable Career Paths

To address these challenges, companies and individuals need to refocus on building sustainable career paths in the IT industry. Companies should be focusing on:

  1. Slowing Down the Pace: It’s essential for both organizations and employees to recognize that career development is not a race. Companies should resist the urge to promote too quickly and instead create structured career paths that encourage deep skill development and experience at each stage.
  2. Investing in Leadership Training: For those in managerial roles, formal leadership and management training should be prioritized. Developing soft skills like emotional intelligence, team management, and strategic thinking is just as important as technical skills.
  3. Mentorship Programs: Pairing younger professionals with experienced mentors can help bridge the maturity gap. Mentorship programs offer guidance, support, and the opportunity for individuals to learn from others’ experiences before taking on significant leadership roles.
  4. Encouraging Lifelong Learning: In a rapidly evolving industry, continuous learning is crucial. Employers should promote professional development through workshops, certifications, and on-the-job training to ensure their employees are equipped for long-term success.

The Romanian IT market offers incredible opportunities, but the pace at which individuals are advancing in their careers can have serious long-term consequences. Burning stages in one’s career might offer short-term financial rewards, but it risks creating a workforce that lacks the maturity, technical depth, and leadership capabilities needed to sustain the industry’s growth. Both companies and professionals need to prioritize sustainable career paths—where development at each stage is embraced—to ensure the future stability and success of the Romanian IT sector.

 

Starea IT-ului în România

Acest post a devenit viral. Cu aproape 160,000 de vizualizări si 1,800 de interacțiuni. Clar a stârnit interes. Așa că merită un articol de sine stătător.

În ultimul timp au apărut multe opinii părtinitoare și alarmante referitoare la viitorul IT din România. De la CEO de companii care deplâng scăderea profitului din cauza dispariției facilităților fiscale, la acei CEO care “sunt constrânși” să aducă programatori indieni pentru că “nu găsesc forță de muncă specializată în România”, și până la oameni cheie din instituții publice care chiar ar putea și ar trebui sa facă ceva pentru industria de IT. Inclusiv o parte din mass-media din România cântă într-o veselie prohodul IT-ului local, motivele însă nu le înțeleg în afară de a fi niște click bait-uri.

Aș dori sa ofer mai jos o scurtă radiografie văzută prin lentilele proprii (da, port ochelari) a pieței locale de IT. Am o experiență de peste 20 de ani în companii IT de produs, servicii, consultanță și outsourcing. De la hands-on coding la a conduce echipe de sute de oameni pe tehnologii diverse și în industrii diferite, de la start-up-uri până la companii mari, inclusiv Big4. Am lucrat cu și pentru clienți din România, UK, US, EU și Orientul Mijlociu, am experimentat culturi și medii de lucru diverse din care am învățat enorm.

1. Facilitățile fiscale din IT (scutirea sectorului IT&C de la plata impozitului pe venit) au apărut ca o măsură a guvernului Năstase în 2001 pentru a stimula sectorul de tehnologie din România și a încetini migrația specialiștilor IT în afară. Aceste facilități au fost aplicate într-un moment în care în România impozitarea era progresivă și avea cote între 18% si 40%. Cota unică a fost adoptată abia în 2005.

Aceste facilități au susținut și au ajutat la creșterea cu succes a industriei IT a României peste 20 de ani. Douăzeci de ani! E o perioadă mult prea mare pentru a avea subvenții pentru o industrie sustenabilă cu angajați plătiți cu mii de euro pe lună. Orice subvenții trebuie introduse pentru o perioadă limitată, ideal agreată de la început.

Am beneficiat și eu de aceste subvenții. Mi-a convenit. Dar la un moment dat, chiar dacă aveam un avantaj financiar, am susținut că nu e normal, echitabil și corect față de alte industrii. IT-ul devenise sustenabil de unul singur, fără aceste facilități. Iar noi ca programatori câștigam destul de bine cu și fără aceste subvenții.

Singura problemă a eliminării acestor facilități a fost modul în care a fost făcută: rapid, fără o comunicare din timp. Majoritatea companiilor erau deja în plin exercițiu financiar al anului în curs și nu au putut reacționa la o astfel de modificare legislativă chiar dacă ar fi vrut.

Astfel de modificări legislative de pe o zi pe alta, fără a fi anunțate și planificate din timp, destabilizează mediul de afaceri și creează o atmosferă de neîncredere și un apetit scăzut de investiții.

Nu vreau să fac o corelație cu disponibilizările din multe firme IT din România la începutul anului 2024 și astfel de modificări legislative peste noapte. Dar nici nu ajută să schimbi regulile în timpul jocului.

2. Digitalizarea statului român este lentă, de multe ori cu erori de implementare grave si NU un model de urmat pentru firmele din privat. Asta ține si de strategia de țară despre care vom vorbi mai jos.

Am avut (ne)norocul să lucrez si eu acum mulți ani la o firmă „abonată la contracte cu statul”. În afară de programatori excepționali, care nu aveau vizibilitate la felul în care se derulau contractele, totul era toxic, bazat pe influență si legături cu ministerele si oamenii care făceau acceptanța „livrabilelor”. Am stat câteva luni, am plecat cu prima ocazie, dar mi-am dat seama ce nu mai vreau în cariera mea.

Din păcate, si în prezent, sunt multe firme care, repetându-se în diverse consorții, câștigă contractele publice. Sunt firme mari si medii care încă ezită să participe în licitații / FRP’s cu statul român din cauza istoricului si posibilelor declinații juridice pe care le poate avea o implementare software.

Suntem departe de Estonia (care, pe lângă gradul înalt de digitalizare, a văzut potențialul de a acorda nomad visa în pandemie pentru cei care doreau să lucreze legal remote din Estonia) si chiar de Republica Moldova în ceea ce privește digitalizarea statului, educația cetățeanului de rând si accesul acestuia la unelte digitale pentru a-si rezolva interacțiunile cu instituțiile statului.

3. Outsourcing? Produs? Servicii si consultanță? Trebuie să alegem sau le putem combina? România a fost și este țara outsourcing-ului. Oricât ne lăudăm cu start-up-uri de succes (Vector Watch, UIPath, RAV, Bitdifender…), la cât potențial avem, ne mulțumim de obicei doar cu execuția ideilor altora. Nu investim destul în mentalitatea de consultanță, de produs, de servicii. Ne mulțumim să avem doar ingineri foarte buni care fiind bine plătiți, mult mai bine decât media țării, ajung să se complacă în a fi angajați sau freelanceri, dar nu să-si dezvolte ideile proprii.

Avem un ecosistem tânăr si fragil care susține ideile si produsele IT românești. Există ceva business angels, inclusiv oameni care eu făcut exit-uri si au luat-o de la capăt pentru a crea ceva mai mare. Dar cred că ar trebui să fie ceva mai organizat, mai strategic, cu o mai mare prezență si implicare a statului.

Facem outsourcing pentru că e la îndemână, e ușor, „it is easy money”. E un daily ratecard cu very low commitment. Dacă am gândi nu neapărat mai strategic, dar măcar mai antreprenorial, am vedea că am putea crea o valoare mai mare doar folosind bench-ul (pentru că vrem – nu vrem, îl avem) pentru a crea produse sau optimiza operațional compania pentru a scădea ratecard-ul si a deveni mai competitivi.

Si dacă tot vorbim de cost.

4. COST. Majoritatea prezentărilor de companii românești care vor să atragă business în țară menționează inevitabil costul. Si talentul, si, bineînțeles, mitul vitezei internetului din România. Dar despre talent, puțin mai jos.

Costul a fost un factor competitiv pentru România mulți ani si toată industria a crescut pe o balanță cost-calitate-siguranță de a face business. Dar în momentul în care costul dezechilibrează balanța si apar alte țări care oferă condiții similare, care mai este „value proposition” de țară pentru România? Dacă țări ca Spania, Portugalia, Grecia si cu siguranță Ucraina (când se va fi terminat războiul si Ucraina va fi pe traiectorie UE si NATO) vin cu aceeași balanță dar care înclină spre ele, de ce un business ar veni în România vs alte țări? Si aici nu vorbim despre țări din alte regiuni precum nordul Africii sau Asia care vin cu un cost muuult mai jos dar cu alte provocări.

Care e valoare pe care companiile o aduc? Dar care e valoare pe care inginerii software o aduc la un price-point competitiv cu programatori din alte țări? Si vorbim aici nu doar de cod scris bine, ci de înțelegerea unui business, de a avea o mentalitate de consultant, de a crea produs. Dar astea trebuie sa vină si din sistemul educațional care acum pare legat de trecut.

Cum bine zicea Mihai Bonca : „Dacă rămâi în outsourcing e foarte greu să ai avantaje competitive. Mereu te va repoziționa cineva mai ieftin. Ai 2 soluții polarizate (Porter) – Smart (Equity/ Diferențiere) sau Ieftin:

a)        Ești smart. Construiești produse, iar mai departe branduri si relația directă cu clientul (B2B sau B2C). Ex. Bitdefender, UiPath. Doar ca e complicat, ai nevoie de resurse si instinct comercial. Pe care majoritatea din IT nu le au.

b)        Ești ieftin. Doar ca nu vei avea avantaje competitive si nici sustenabilitate. Mai devreme sau mai târziu vei fi in competiție cu tarile mult mai ieftine.

Lohn-ul a adus niște bani si nimeni nu cred ca se aștepta să se oprească muzica. Nu atât de brusc.”

Si pot confirma la primă mână – părinții mei ai rămas amândoi șomeri după ce fabrica de textile din Vaslui s-a închis la mijlocul anilor 90.

5. Educație. Nevoia de juniori si reconversia profesională. Cred că batem un cal aproape mort. Deși avem generații de ingineri software în continuare buni, nu avem o creștere în calitate si/sau număr. Nevoie exista si încă este, dar sistemul nu s-a adaptat. Aceleași materii, aceiași profesori, același sistem în care finanțarea este o problemă pentru a menține profesorii talentați în sistemul educațional public. Si spun asta din proprie experiență – primul meu job cu carte de muncă a fost la Liceul Economic 2 Iași, iar la prima inspecție mi s-a sugerat să rămân în sistem ca profesor pentru că „am talent”. Salariul era infim în comparație cu al unui programator. Si chiar dacă banii nu contează pentru cineva pasionat, la un moment dat, din păcate, vor conta. Mi-a plăcut să predau, e o pasiune pentru mine, dar sistemul de educație public încă nu a evoluat la nivelul mediului privat. Mă uit la licee private si se vede diferența de management, de marketing, de rezultate (pentru ca până la urmă totul se măsoară în rezultate).

În prezent sunt foarte puține firme care mai angajează juniori. Dacă tot vorbim de subvenții sau facilități fiscale, aici ar trebui menținute sau chiar crescute pentru a ajuta absorbția tinerilor absolvenți în industrie. Ne vom trezi în 3-4 ani că nu mai avem de unde sa angajăm mid devs.

Reconversia profesională este văzută ca o paria în industria IT. Personal, am avut experiențe pozitive cu oameni maturi, venind din alte industrii care au venit cu perspective diferite, care au depus un efort suplimentar pentru a compensa lipsa background-ului tehnic.

6. Programatori „expați” aduși din Asia. Cea mai mare prostie greșeală. Singurul motiv este de a pune presiune artificială pe cost în loc să ne uităm la valoarea adăugată si la adevărata problema. Acei Chief Executive Officers (pe scurt patroni) se uită la un câștig imediat vs un plan pe termen lung. Da – bați concurența la preț pe anumite proiecte. Dar cum îți va arăta afacerea în câțiva ani când nu vei mai putea angaja local sau angajații tăi din Asia sunt deja „pe Germania”?

Avem potențial ingineresc, haideți să lucrăm cu acesta și să-l gestionăm mai eficient, să investim în el. Să avem business-uri sustenabile nu hit and run.

7. Duo-jobbing. Si apropo de hit and run – o parte din inginerii români, o dată cu remote work,  lucrează pe 2-3 laptopuri în paralel pentru a câștiga un „daily rate” cât mai mare din mai multe părți, cu un minimum de efort, ceea ce bineînțeles nu e sustenabil pe termen lung. Personal, nu am o problemă cu acest tip de colaborare. Cât timp lumea e fericită (angajator, prestator), we’re all good. Toată lumea obține ce are nevoie.

Dar, oricât de legal ar fi, ar trebui să ne punem și o întrebare de etică profesională. Știu programatori cu 2-3 joburi care fac minimul necesar la fiecare doar-doar pot factura în toate părțile. Și apoi ne întrebăm de ce valoarea adăugată scade…

În momentul în care ai 2-3 joburi, nu mai există pasiune, proactivitate, doar rareori un minim interes. E doar ziua și factura. Cred că e nevoie de o asumare de toate părțile implicate, nu doar de la angajatori, ci și de la angajați sau colaboratori. E ok să ai mai multe joburi, dar e ok să le ai secvențial, nu în paralel.

8. Strategia de țară. Da, știu, e mult spus strategie. Dar măcar un plan. E IT-ul în plan sau nu?  Mă uit la țări din zonă si văd evoluție, strategie, emancipare, acces la date, timpi economisiți în interacțiunea cu statul. Nu vorbim la nivel de ministru de „digitalizarea e email si whatsapp”.

Dacă tot vrem ca IT-ul să continue să însemne ceva în România, poate ar trebui ca instituțiile responsabile, mediul academic, ANIS Romania si mediul privat să se pună la masă pentru a crea o strategie de țară. E atât de mult potențial. Din păcate, folosit necorespunzător. Vorbim de 8% din PIB, o industrie care e unul din motoarele țării. Daca vrem să menținem sau chiar să creștem, acum e momentul sa facem ceva.

Cum ar fi ca oameni care au făcut start-up-uri de succes, oameni care conduc centre de livrare românești pentru companii mari „din afară”, CEO ale companiilor locale, decani, secretari de stat si membri decizionali din sectorul public, si membri ai diverselor ONG ar sta la aceeași masă si ar discuta despre cum am ajuns aici ca industrie, unde suntem în tot ecosistemul european, si cum putem evolua.

Stiu, sună a manifest sindicalist. Dar dacă nu facem ceva pentru IT-ul din România acum, la anul va fi cam târziu.

From Supplier to Strategic Partner: How Software Development Outsourcing Companies Can Add Value to a Client’s Ecosystem

I’ve been in the tech industry for more than 20 years. From hands-on coding to senior leadership roles. From start-ups to large & established organisations. From product to services and to outsourcing companies. And there was so much to learn from all these business models, industries and technology stacks.

Recently, my focus has been primarily on the Romanian IT market and working closely with big brands which have local presence but also with Romanian-born companies. In my role, I connected with lots of peers from other local players, mainly outsourcing companies. All having the same challenges: the clients are deciding the way of collaboration in a client-supplier relationship and staff augmentation approach (body leasing or body shopping, the terms I frequently use). Usually, the discussion around a contract is the number of resources, skills, seniorities and rates. Which I find it a bit auto limitative. For both parties involved in this contract.

Don’t get me wrong, staff augmentation has its advantages, providing full flexibility for the client to ramp up or down and having access to highly skilled resources. And for the outsourcing companies, having little to no responsibility other than adding margin on top of the resources they supply.

While staff augmentation is a model which has worked, is currently working and will continue to work for the clients and suppliers, I believe the Romanian market needs to diversify on top of this approach so that it grows, adds more value to the clients and innovates.

Outsourcing companies need to move from this easy, comfortable and low risk model and embrace more challenging but more rewarding and value-adding models. While clients need to be more open and embrace collaboration and partnership in its true sense.

By shifting from a transactional relationship to a more integrated partnership, outsourcing companies can deliver greater value, driving innovation and contributing to the long-term success of their clients.

Some positive outcomes of a partnership vs a client-vendor model:

  1. Understand the business of the client. A partner will go beyond technical delivery. They will invest time in understanding the client’s industry, business model, market challenges, and growth opportunities. This knowledge allows them to provide tailored solutions that are not only technically sound but also strategically aligned with the client’s objectives.

2. Create meaningful relationships within the client org chart at all levels, so that there is trust at each seniority level and departments. And whenever issues arise (which is inevitable), you know who to reach out and solve the issue together.

3.  Bring different perspectives, proactive innovation and continuous learning

  • Create innovation hubs. Work closely with the client to explore new ideas, experiment with emerging technologies, and develop prototypes. This can help the client stay ahead of the curve in their industry.
  • As a technology partner for the client, it’s the outsourcing company’s duty to stay up to date with technology trends. It anticipates needs and suggests improvements or innovations that can drive the client’s business forward. This proactive approach turns the partnership into a source of competitive advantage and allows the outsourcing company to act as a strategic consultant.
  • Co-create and co-host technical events like hackathons and conferences
  • Have your experts transfer knowledge into client teams so that there is same level of expertise and the client benefits from the the tech savvy resources from the outsourcing company in its entirety, not only delivering software.

4. Having common goals, sharing risks. Rather than being compensated for the hours worked, the outsourcing company is paid based on the results achieved. This could include metrics like time-to-market, product performance, or customer satisfaction. This model aligns the outsourcing company’s incentives with the client’s success.

Transforming from a supplier of technical resources to a strategic partner requires an outsourcing company to take on a more proactive, integrated, and value-driven role. By understanding the client’s business deeply, bringing innovative solutions, and choosing the right collaboration models, an outsourcing company can become a key part of the client’s ecosystem. This evolution not only benefits the client by driving better results but also creates a more stable and mutually beneficial relationship for the outsourcing company. On the other hand, the clients need to be more open, more flexible and focus more on their core business while creating trusted partnerships with technology providers while growing their internal capability with the help of the partner.

It’s a miracle that we exist. And while we’re here, let’s live and leave a legacy. For the miracles to follow

Scientists have calculated using different math and probabilistic models that the chances for a human being to be born is 1 in 400 trillion, taking into consideration genetics, ancestral events and environmental & historical events. ONE IN FOUR HUNDRED TRILLION. Now you do the math, what are the odds that you are here today?

While this number is debatable and it’s more a philosophical topic rather than pure science, it is still a miracle that you, as individual, were born years ago. If this miracle though happened, wouldn’t be a pity not to take advantage of it? And do the most with it, living it at its full potential, building stories and leaving something behind for the miracles to follow?

When I was young(er) life was all about me, developing myself, having more, proving myself to people around me. The older I’ve got, wisdom seems to have reached me from behind. Today I am more settled, not being always on the run, not looking for validation anymore, but more importantly more thankful to who I am as an individual, what I have and people around me.

If I would highlight something that changed over years is the way I approach people growth. In the last 10+ years I’ve been building teams and organizations, from start-ups to large scale businesses. While growing people around me. And it’s so rewarding to see people progressing, developing, no matter if they stick to your team or just fly to new horizons. I’ve always believed that no matter how good of a leader you are, some people have grown so much around you that they need their own thing and need to move on in another team, another business but still keeping a strong personal connection.

With age and experience I’ve learned to give back more while keeping both eyes open to new perspectives, knowledge and lessons I could learn from human interactions.

The chance you are here today is 1 in 400 trillion. ONE IN FOUR HUNDRED TRILLION. What are the odds that you are reading this today? What will you do different tomorrow?

What if Romanian IT industry would shift to product mindset vs outsourcing?

I’m a firm believer that Romania has a great tech potential with strong engineering skills, very good tech universities and very good tech infrastructure. While the premises are here, the broader ecosystem (political included and being the main driver) is not helping, though IT is contributing 6% to the Romanian GDP with more than 200,000 engaged people in the ecosystem.

Romania has roughly 24,000 software companies (in comparison Poland has 50,000 software development firms matching this to a population which is double to Romania’s) out of which 20% are product companies but with significantly lower headcount compared to outsourcing companies.

If we’re to mention, Romania is home for UIPath and Bitdefender product companies but also supporting broader international product companies through their delivery centers (outsourcing): Adobe, Google, Microsoft, Oracle, EA, SAP, Thales or other smaller players like Stripe.

If we look at the salaries, yes – software engineers are on the top of the pyramid and they’re creating the upper middle class of current Romania. They have the financial means to afford decent housing, child education, cars, holidays … you name it. But the value they produce is just executing good quality code which is envision by product managers or architects from western world.

What if? What if Romania would be sponsoring and supporting local ideas and transforming the way we do software development – more initiation vs execution? Use the brain rather than outsource it for the money? What if we solution our problems and use our local talent pool to solve our challenges? What if we imagine the future digital landscape and use our talent pool to achieve it? What if we partner with local authorities and digitalize the public sector using the generous amazing talent we have? What if … and you can add in here…

I’ve been experimenting the textile outsourcing in the early 90’s first hand (we called it lohn) – my parents have worked their entire life in a textile factory and have become unemployed due to redundancies and offshoring because the Romanian textile industry was not able to re-invent itself.

I don’t want to live the same in today’s IT Romanian industry.

Once I passed over the financial constraints, I’ve got the courage to have a voice

I used to be a hard-working software developer and a very “by the book” team leader at the beginning of my career. Not taking risks, playing by the rules and doing my job as per the corporate job description. I could not express my personality nor my creative part due to a fear related to financial constraints (mortgage, a missing financial safety net in case “something happens” …). Just focusing on my personal development to become better and irreplaceable…

Once I passed over the financial constraints, I’ve got the courage to have a voice, to take more risks, to have a more disruptive approach to businesses and processes, to always look for continuous improvement for the ones around me and for the businesses I was working for. Because I believed in them and because I had a financial safety net in case I could be totally wrong and eventually be laid off. Never happened, but it’s better to be safe than sorry 😀

Far from me to say I’m at the top of Maslow’s Pyramid, but for sure I’m aiming for more each day, to become a better version of myself while always looking to give something back to those around me and businesses I interact with.

When life gives you lemons…

Prologue: In 1915, American writer Elbert Hubbard wrote “He picked up the lemons that fate had sent him and started a lemonade stand” in his obituary for the vaudeville performer Marshall Pinckney Wilder. This was highlighting the actor’s achievements despite the challenges of being born with dwarfism. In time, the phrase was refined to what we know it today: “If life gives you lemons, make lemonade” urging us to look for the bright side when something bad happens. I personally don’t think lemons are bad, I love them in many combinations and dishes, I am very creative in the kitchen 🙂

Early June, while running in the park alongside my doggo, I broke my leg so badly that I had to undergo surgery, not being able to walk for at least 3 months. Being an active person, sports in the morning and surrounded by people across the day, I felt trapped like in a cage initially in the hospital and after that at home, having no doctor’s indication nor possibility to go outside the house.

One week after surgery, I resumed work, connecting from home, but I mentally suffered for a while because of missing social interactions, lack of physical activity and not being able to do most of the usual stuff. It was the first time after the Covid lock-down that I was working from home for such a long period. While I could properly do my job being effective, something was still missing.

I always wanted to do something else alongside my main job, especially something where I would share from my own experiences and help people not repeat my professional mistakes (and there were a few). Mainly focused on people growth.

Therefore, I put it out publicly on LinkedIn that I’m offering few hours of my personal time for people who think would benefit from some 1:1 mentoring sessions, or just some meeting where they would brainstorm ideas or look to pick up my brain. And that was a blast! I did not see this coming. I could not believe to abundance of private messages asking for this type of sessions. I eventually had to delete the post from LinkedIn after a very short time so that I could accommodate the first requests.

Few hours turned into 40, one-time sessions turned into recurring ones. I’ve met brilliant people who are either in a transition in their career or they feel stuck at their current jobs. Such amazing stories and it feels so rewarding when after a few days after our sessions, I kept receiving thank you notes and nice feedback.

This kept me going on and thinking how I could scale this initiative given the amount of people needing this.

To support me better in my endeavor, I have soft-launched Bridging Gaps which will act as an umbrella for several well-seasoned, well-known leaders in the tech industry (where I believe there’s a lot of need) willing to share from their experiences in their mentoring and career coaching sessions.

I’m currently working with them to better understand how we complement each other, and better support the IT community.

I was very fortunate to have good managers and leaders at the right time of my career in my different jobs and organizations. I often received the right level of guidance, mentoring, coaching and support. And when I didn’t, I either challenged the status quo, either looking for outside perspectives to allow me to move on (be it in the same company or elsewhere).

I believe in human potential and in continuous growth. And I hope this initiative will provide a platform for many people who feel stuck in their careers, who don’t feel they get the right level of support, mentoring or coaching and feel the need of a different perspective coming with experience, empathy and, of course, full confidentiality.

—-

PS: Another good thing which happened since walking in crutches is that my upper body is fitter than ever 🙂

The importance of creativity in software development

Those who know me may say I’m a dreamer, but if you don’t dream where do you go? And dreaming bold comes with a bit of creativity to imagine and possibly shape the future. In a tech binary world, I’ve always cultivated my creative side, either by playing different instruments, writing music or writing words. I’ve always considered creativity an important part of my job, from the early times when I was a hands-on Java developer. Figuring out an out-of-the-box solution, finding an optimized implementation of a quite basic algorithm, I’ve always pushed my creativity limits. And even now, I’m not your ordinary tech leader. I’m often looking for new angles, for different approaches and disruptive ideas.

AI’s impact on software development is profound. Machine learning algorithms can now write code, debug software, and even optimize performance, all tasks traditionally reserved for human developers. Tools like GitHub Copilot, which leverages OpenAI’s Codex, exemplify this shift by assisting developers in writing code more efficiently. These advancements raise an important question: What role does human creativity play in a field increasingly dominated by AI?

While AI excels at pattern recognition and performing repetitive tasks, it lacks the nuanced understanding and inventive spark that characterize human creativity. Here’s why creativity remains indispensable in software development.

  1. Innovative Problem Solving: AI can analyze vast amounts of data to identify patterns and suggest solutions, but it often requires human creativity to develop innovative approaches to unique and complex problems. Developers use their creative thinking to conceptualize new algorithms, design innovative architectures, and create user-centric applications that stand out in the market.
  2. User Experience (UX) Design: Creating an intuitive and engaging user experience goes beyond functionality. It requires a deep understanding of human behavior, empathy, and an artistic touch, areas where human creativity is endless. Designers and developers collaborate to craft seamless interactions and aesthetically appealing interfaces that resonate with users on an emotional level.
  3. Ethical Considerations: As AI systems become more autonomous, ethical considerations become paramount. Creative thinking helps developers foresee potential ethical dilemmas and devise solutions that align with social values. This includes ensuring fairness, transparency, and accountability in AI-driven applications.
  4. Customization and Personalization: Modern software solutions often require customization to meet the specific needs of diverse users. Creative developers can tailor applications to provide personalized experiences that AI alone might not achieve. This adaptability is crucial in fields like healthcare, education, and entertainment, where individual preferences and requirements vary widely.
  5. Interdisciplinary Collaboration: Creativity thrives at the intersection of different fields. In software development, this means integrating knowledge from domains such as psychology, sociology, art, and business. AI can process and analyze data from these fields, but it takes human creativity to synthesize insights and apply them in meaningful ways.

Cultivating Creativity in an AI-Driven World

To harness the full potential of creativity in software development, organizations and individuals must actively foster an environment that nurtures innovation. Here are some strategies to achieve this:

  1. Encourage Continuous Learning: Staying updated with the latest technological advancements and expanding one’s knowledge across different fields can spark creative ideas. Workshops, brainstorming session,  hackathons, and cross-disciplinary projects are excellent ways to encourage continuous learning and creativity.
  2. Promote a Collaborative Culture: Collaboration often leads to the most creative solutions. Encourage teamwork and open communication among diverse groups of people while accepting different perspectives. A culture that values each team member’s input fosters an atmosphere where creativity can flourish.
  3. Provide the Right Tools and Resources: Equip developers with cutting-edge tools and resources that enhance their creative capabilities. This includes access to AI-powered development tools that can handle routine tasks, allowing human developers to focus on more creative aspects.
  4. Embrace Risk-Taking: Creativity involves experimenting with new ideas, some of which might fail. Organizations should create a safe space for risk-taking, where failure is viewed as a learning opportunity rather than a setback.
  5. Recognize and Reward Creativity: Acknowledge and reward innovative solutions and creative contributions. Recognition can motivate individuals and teams to continue pushing the boundaries of what’s possible.

That’s all for now. I’m very grateful for the technological advancements. It’s a new era for us, tech people and not only. It’s a new era for us to be freed by routine tasks and have more time for creativity and focus on more impactful solutions. We should embrace AI and use the best out of it.

The Discovery Phase in IT Project Implementation: Mitigating Failure and Maximizing Success

I’ve been in the tech industry for more than 20 years. And I’ve seen many projects failing due to lack of clarity on requirements and jumping directly into implementation, lack of engagement of stakeholders, false expectations, lack of budget and many-many other factors. And I always suggested to my clients, lets do a discovery phase: to discover and understand your needs, to understand your stakeholders, to understand your ecosystem and constraints, to ask and understand.

In IT project implementation, the discovery phase stands as a pivotal stage in the journey towards success. It serves as the foundation upon which the entire project is built, providing clarity, direction, and crucial insights that guide decision-making throughout the development process.

  1. I’ve seen organizations jumping directly into implementing large scale projects, spending millions of dollars and then cutting losses because the project did not go anywhere.
  2. I’ve seen organizations spending tens of thousands of dollars into discovery phases and then decided not to invest anymore because the end product/solution did not fit their requirements or their budget or their stakeholders culture.
  3. I’ve seen organizations spending tens of thousands of dollars into discovery phases and moving on implementing successful long running IT projects.

Understanding the Discovery Phase

The discovery phase represents the initial stage of an IT project, where stakeholders collaborate to gather requirements, define objectives, and outline the project scope. Key deliverables of this phase include a prioritized requirements backlog, estimated budget and timeframe, wireframes and user journeys, stakeholder map and documented assumptions and risks. By investing time and resources upfront to thoroughly explore and define project parameters, organizations lay the groundwork for a successful implementation.

The High Stakes of IT Project Failures

According to Gartner, Standish Group and PMI, a total of 14% of projects are canceled without any results, 31% do not meet their objectives, 43% exceed their budget and 49% exceed their agreed time frame, with factors such as poor planning, poor stakeholder involvement, inadequate requirements definition, and scope creep cited as common contributors to failure. These failures come at a significant cost to organizations, both in terms of financial losses and damage to reputation. Moreover, the fallout from failed IT projects can have far-reaching implications, impacting employee morale, customer satisfaction, and overall business performance.

Case Studies: Learning from Failure

Numerous high-profile cases serve as cautionary tales of IT project failures stemming from a lack of investment in the discovery phase. For example, the UK’s National Health Service (NHS) experienced massive cost overruns and delays in the implementation of its electronic health records system, largely due to insufficient upfront planning and requirements gathering. Similarly, the failure of Target’s expansion into Canada was attributed in part to inadequate preparation and planning, resulting in logistical challenges and operational inefficiencies.

The Discovery Phase as a Risk Mitigation Strategy

By contrast, organizations that prioritize the discovery phase are better equipped to mitigate risks and address challenges proactively. According to Gartner, projects that invest in thorough upfront planning are significantly more likely to achieve success than those that do not. By establishing a clear roadmap, defining project scope, and identifying potential pitfalls early on, organizations can minimize the likelihood of costly delays and setbacks down the line.

The discovery phase represents a critical mix in the success or failure of IT project implementations. By investing upfront in thorough planning, requirements gathering, and risk assessment, organizations can set themselves up for success and avoid the pitfalls that have plagued so many projects in the past. As the data from Gartner and other sources clearly illustrate, the cost of failure far outweighs the investment required to conduct a comprehensive discovery phase. Therefore, organizations would be wise to prioritize this essential stage in their IT project implementation process, ensuring a solid foundation for success.

While the discovery phase may seem waterfallish, it’s actually an iterative process, collecting feedback on requirements and assumptions, incorporating feedback and iterating during multiple workshops. Any implementation project following a discovery phase has an agile approach with regular sprints, demos and client feedback getting incorporated.

AI impact on software development jobs

The impact of Artificial Intelligence on software development jobs?

I used to be a decent to a good developer. Never a top coder, no matter the programming language, be it Java, .NET, PHP, or front-end frameworks. I believe I had a self-imposed limitation on how to binary and algorithmically think. And I am not ashamed to admit it. But I developed a certain skillset on top of my coding skills that made me an asset wherever I went. Call it consultancy, open minded, thinking outside of the box, creativity, authenticity…But enough of me bragging in here  Let’s go to the essence.

But before we go, spoiler alert: I truly believe that creativity, humanity, personal interactions will never be replaced by AI, and I think that we as humans can add value to businesses through the human centric actions. Anything else can be automated, generated, and replaceable. But not the human, personal touch.

Artificial Intelligence (AI) is the hot topic of the recent months, and everyone is talking about it, either about its power and innovation, either about the unknown dangers it may bring. AI has swiftly emerged as a transformative force across various industries, reshaping processes, enhancing efficiencies, and redefining job roles. And this can be seen especially in content creation, from writing well compounded emails to generating images and video clips.

One sector that’s particularly feeling the impact of AI is software development and engineering. As AI technologies advance, they’re not only revolutionizing how software is created and deployed but also influencing the landscape of software engineering jobs.

Traditionally, software development has been a labor-intensive process, requiring significant human intervention at every stage. However, AI is gradually changing this paradigm. With its ability to analyze vast amounts of data, identify patterns, and learn from experience, AI is streamlining various aspects of software development.

  1. Automated code generation and unit testing

AI-driven tools can now generate code snippets, functions, modules, or even entire programs based on specific requirements. These tools leverage machine learning algorithms trained on extensive repositories of existing code to produce functional and optimized solutions.

I have played with multiple AI-based IntelliJ plugins and they’re really powerful tools in code generation. I personally see a lot of junior software development roles disappearing in the future given contextually code generation. And I’ve seen perfectly generated unit tests drastically improving speed of coding a particular module.

  1. Bug detection and debugging

AI algorithms excel at pattern recognition, making them able to identify bugs and potential vulnerabilities in software code. Advanced AI-powered debugging tools can analyze code in real-time, pinpointing errors and suggesting fixes, thereby reducing debugging time and enhancing software reliability.

  1. Predictive maintenance

In software engineering, AI is being utilized for predictive maintenance of applications and systems. By analyzing historical performance data and usage patterns, AI algorithms can anticipate potential failures or performance degradation, allowing developers to preemptively address issues before they escalate.

While AI promises to revolutionize software development practices, it also raises concerns about its implications for job roles within the industry.

  1. Shifting skills requirements

As AI technologies become integral to the software development lifecycle, there’s a growing demand for software engineers with proficiency in AI, machine learning, and data science. Professionals need to upskill and adapt to these evolving requirements to remain competitive in the job market. Consultancy, industry knowledge and client centricity skills will need to be added on top of coding skills. Not the best coders will be highly paid, but rather the adapting engineers with business and client focus.

  1. Augmented development teams

Rather than replacing human developers entirely, AI is augmenting their capabilities. AI-driven tools serve as invaluable assistants, automating repetitive tasks, and allowing developers to focus on higher-level problem-solving and creativity. This collaboration between humans and AI is fostering more efficient and innovative development processes.

  1. New job opportunities

While AI may disrupt certain traditional roles, it also creates new avenues for employment. Roles such as AI system trainers, data annotators, AI ethics specialists, and AI solution architects are emerging as companies increasingly integrate AI into their software products and services.

The integration of AI into software development is inevitable, and its impact on software engineering jobs is profound. While some roles may undergo transformation or displacement, the overarching trend is one of evolution and adaptation. As AI continues to advance, software engineers must embrace lifelong learning, stay abreast of emerging technologies, and cultivate a mindset of innovation and human centricity.

The impact of AI on software development and engineering jobs is multifaceted. While it brings forth challenges and uncertainties, it also presents immense opportunities for innovation, efficiency, and career growth. By embracing AI as a collaborator rather than a competitor, software engineers can navigate this evolving landscape and contribute to the development of cutting-edge solutions that shape the future of technology