הקושי האמיתי בפיתוח עם AI מתחיל כשהמערכת כבר עובדת
כשמפתחים מערכת פיננסית חיה באמצעות Vibe Coding, האתגר המרכזי עובר בהדרגה מיצירת יכולות חדשות לשמירה על העקביות, ההרשאות וההתנהגות שכבר הוכחה.
לסיפור המלא... לסגירת הסיפור
תוכן הסיפור
תמצית המוצר
ResidentSuite היא תוכנת ועד בית חינם לניהול כספי בתים משותפים, ועדי בתים וחברות ניהול. היא מרכזת תקציבים, גבייה וקבלות, הוצאות, תנועות בנק, פרויקטים, דוחות ופורטל לדיירים, לצד פניות ותקשורת עם ועד הבית או חברת הניהול. המערכת פועלת בעברית ובאנגלית ונבנתה באמצעות Base44. לאתר המוצר ולהרשמה.
הזווית הטכנולוגית: כשמפתחים מערכת פיננסית חיה באמצעות Vibe Coding, האתגר המרכזי עובר בהדרגה מיצירת יכולות חדשות לשמירה על העקביות, ההרשאות וההתנהגות שכבר הוכחה.
הפרויקט שהתחיל בבניין שלי
הסיבה להקמת ResidentSuite לא הייתה רעיון לחברת תוכנה. רציתי לנהל טוב יותר את כספי הבית המשותף שבו אני גר. כמו בבתים משותפים רבים, התקציב, הגבייה, התשלומים והמעקב אחר הוצאות יכולים להתפזר בין גיליונות עבודה, תכתובות ומסמכים שאינם מחוברים זה לזה.
היו לי עשרות שנים של ניסיון בניתוח מערכות מידע ובתכנון תהליכים עסקיים. ידעתי פחות או יותר איזו מערכת רציתי, ואילו קשרים צריכים להתקיים בין בניינים, דירות, דיירים, תקציבים ותנועות כספיות. מה שלא עמד לרשותי בעבר היה מסלול מעשי שבו אדם אחד יכול גם לממש את התכנון ולהעמיד שירות אינטרנטי פעיל. פלטפורמת Base44 שינתה את המשוואה הזאת.
בהדרגה התרחב הפתרון הראשוני למערכת המשרתת סוגים שונים של משתמשים: חברי ועדים, חברות ניהול ודיירים. נוספו תקציבים שנתיים, חישובי דמי ועד, גבייה והפקת קבלות, יבוא תנועות בנק, ניהול פרויקטים, דוחות וממשק המאפשר לדיירים לעיין במידע ולפנות לוועד.
מבחוץ זו רשימת יכולות. מבפנים זו כבר מערכת שבה שינוי שנראה נקודתי יכול להשפיע על תהליך עסקי אחר.
הקוד נכתב מהר. ההשלכות מגיעות אחר כך
אחד הדברים המפתים בפיתוח באמצעות AI הוא קצב הביצוע. אפשר לתאר צורך, לראות רכיב חדש ולהמשיך הלאה. בתחילת הדרך זה יתרון כמעט משכר. אבל מערכת כספית מרובת משתמשים אינה אוסף מסכים בלתי תלויים.
תנועת הוצאה קשורה לתקציב ולקטגוריה; הוצאה של פרויקט מתנהלת בהקשר אחר. משתמש שמנהל לקוח אחד אינו אמור לקבל גישה למידע של לקוח אחר. פורטל דיירים אינו שקול לממשק של מנהל מערכת. וגם כאשר שני מסכים מציגים אותם נתונים לכאורה, הם לא בהכרח רשאים להשתמש באותם כללי בחירה וסינון.
למדתי זאת בדרך הפחות נעימה: שינוי שמטרתו לשפר תכונה אחת עלול לשנות בהיסח הדעת התנהגות קיימת. כלי הפיתוח מגלה לעיתים יוזמה רבה מדי. הוא רוצה לפתור את הבעיה שהוצגה לו, ולעיתים בוחר בדרך רחבה יותר מזו שהתבקשה. התוצאה עשויה להיראות משכנעת במסך שבודקים, בעוד שבמסך אחר נוצרה נסיגה.
הבעיה אינה בהכרח שה־AI כותב קוד גרוע. לעיתים הוא עושה בדיוק את מה שאפשר היה להבין מההנחיה, אך בלי להבין די הצורך את הגבולות העסקיים שהמערכת כבר צברה. ככל שהיישום גדל, הגבולות האלה הופכים לחלק חשוב מהאפיון.
ההחלטה החשובה: לא כל שיפור מצדיק שינוי רחב
בהתאם לכך שיניתי בהדרגה את אופן העבודה שלי. במקום לפתוח כל בעיה בהוראה לביצוע, אני משתדל להבחין בין שלושה שלבים: אבחון התנהגות קיימת, החלטה מה צריך להשתנות, ובדיקה מה אסור שייפגע בדרך.
זה חשוב במיוחד סביב הרשאות, בידוד מידע בין לקוחות, הזמנות משתמשים וחישובים כספיים. כאן אינני מחפש פתרון יצירתי במיוחד; אני מחפש שינוי ממוקד שאפשר להסביר ולבדוק.
גם הניסיון שלי במערכות מידע קיבל משמעות חדשה. בעבר עסקתי בתכנון והעברתי מפרטים לצוותי פיתוח. כעת אני מנהל בעצמי את השיחה בין הצורך העסקי לבין כלי שמסוגל לממש אותו. היכולת לשאול מה עוד יושפע, לזהות הנחה סמויה ולהתעקש על בדיקת תרחישים אינה פחות חשובה מהיכולת לנסח פרומפט מוצלח.
במקביל אני נעזר ב־ChatGPT כיועץ לתכנון ולסקירת החלטות, ולא רק ככלי לכתיבת בקשות למפתח. זה אינו מבטיח תשובה נכונה, אבל מאפשר לקיים דיון ביקורתי לפני שמפקידים בידי כלי הפיתוח שינוי במערכת פעילה.
התיעוד אינו נספח למערכת — הוא חלק מהאחריות עליה
כשהתוכנה משתנה במהירות, גם הידע על אופן פעולתה צריך להישמר. מבחינתי אין די בכך שאני זוכר איך תכננתי תהליך מסוים, או שכלי הפיתוח מצליח למצוא אותו בקוד. נדרשים גם תיעוד טכני של המערכת ומדריכי משתמש שמסבירים את הפעולות ואת ההיגיון שמאחוריהן. ב־ResidentSuite אני משקיע במדריכים בעברית ובאנגלית, לצד בסיס ידע לעוזר AI תפעולי שמאפשר למשתמשים לשאול כיצד לבצע פעולות ולהתמצא במערכת.
זהו המשך טבעי להחלטה שלא להסתפק בהוספת יכולות. תוכנה טובה צריכה להישאר מובנת גם כאשר נוספות אפשרויות, מסכים ותהליכים. מדריך שימושי מצמצם את התלות ביוצר המערכת; תיעוד טכני מקל להבין מה כבר קיים לפני שמשנים אותו; ועוזר AI מאפשר לקבל הסבר ממוקד בלי לחפש בכל פרקי המדריך.
אבל לתיעוד כזה יש גם עלות תחזוקה. אם מסך השתנה והמדריך או בסיס הידע נשארו מאחור, העוזר עלול להשיב בביטחון תשובה שכבר אינה נכונה. לכן עדכון התיעוד הוא מבחינתי חלק מהשלמת שינוי במוצר, ולא משימה שאפשר לדחות ללא הגבלה.
דווקא המערכת הפיננסית לימדה אותי את גבולות ה־Vibe Coding
ResidentSuite המחישה לי שאדם אחד יכול להוביל פיתוח של מערכת שהייתה מחייבת בעבר צוות רחב יותר. היא גם המחישה את המחיר של הצלחה כזאת: ככל שנוסף שימוש אמיתי, כך קשה יותר להתייחס לכל גרסה כאל ניסוי שאפשר למחוק ולהתחיל מחדש.
היום השאלה שמנחה אותי אינה רק "האם אפשר לבנות את זה באמצעות AI?" אלא "האם אפשר להוסיף את זה בלי לערער את מה שכבר עובד?". במערכת פיננסית, התשובה השנייה חשובה לפחות כמו הראשונה.
הפרויקט: אפליקציית ResidentSuite | פלטפורמת הפיתוח: Base44 | גישה: הרשמה עצמית, שימוש חינמי | שפות: עברית ואנגלית
מעבר לסיפור המשלים: אתר השיווק של ResidentSuite — המעבר לשליטה בקוד, בפרסום וב־SEO.