אני _______ ויטלי פריידוביץ'
ארכיטקט מערכות הפעלה | מומחה סייבר | חוקר | מרצה | מפתח תוכנה אומן
פיתוח, אפיון ואבטחת תוכנה.
צלילה לתוך התחומים הטכנולוגיים העמוקים ביותר.
חקירת גבולות הבלתי אפשרי, תוך כדי הרחבת האפשרי.
אלו הן התשוקות שלי.
יושרה. אומץ. חיים מתוך תשוקה. סקרנות. בניית מערכות יחסים.
אלו הם ערכי היסוד שלי. זה מי שאני כאדם.
הם אלו המתווה את העשיה שלי בזמן שאני יוצר תוכנה,
עובד עם לקוחות, מדלוור מוצרים, נפגש עם אנשים.
זה אני!

המסע שלי
הכישורים שלי :: הניסיון בפועל
- העברת הרצאות בכנסים מקצועיים ו- Webinar-ים
- יצירת קורסים, פיתוח הדרכות והתאמתם לצרכי הלקוחות
- העברת קורסים והדרכות לצוותי פיתוח במגוון ארגונים
- כתיבת ספר על פיתוח AOSP
- אפיון הארכיטקטורה של מוצרים חדשים המבוססים על מערכת ההפעלה אנדרואיד
- אפיון השינויים הנדרשים בארכיטקטורת מערכת ההפעלה אנדרואיד לטובת דרישות מגוונות
- הובלת הפיתוח של HelixOS – מערכת הפעלה מאובטחת חדשה המבוססת על אנדרואיד
- פיתוח מוצרים חדשים המבוססים על AOSP, הוספת יכולות חדשות למערכת ההפעלה, שינוי ההתנהגות של רכיבים קיימים של AOSP בהתאם לצרכי הלקוחות
- ביצוע מחקר מתקדם וייעוץ עבור מגוון לקוחות ב- AOSP, בכל שכבות מערכת ההפעלה
- אבטחת מכשירי אנדרואיד ע"י ביצוע שינויים בכל שכבות מערכת ההפעלה
- הקשחת מכשירי IoT
- ביצוע מחקר של פרוטוקולי תקשורת
- ניתוח היכולות של המודם, הוצאת נתונים. ביצוע הנדסה לאחור של ה- protocol stack, ניפוי היכולות, ניתוח מודם של Qualcomm ואינטל באמצעות כלים כמו scat, qxdm & diag parser
- ביצוע הנדסה לאחור ושינוי של רכיבי תוכנה בקוד סגור
- השתתפות בצוות חולשות וניתוח איומים
- פיתוח וביצוע שינויים ב- Linux לסביבות embedded ובהן Tina Linux, OpenWRT
- פיתוח Linux ל- edge computing הרץ על חומרה ייחודית של ARM – Gentoo Linux
- MCUBoot – התאמת MCUBoot בהתבסס על דרישות המוצר
פיתוח Java Card Applets
- ZephyrOS -פיתוח קושחה חדשה ל- Nordic MCU
- Nordic’s nRF52833 – פיתוח קושחה מבוססת ZephyrOS
- ipAccess – לוח S60Z
- Beagle Board – שיפור ביצועים ופתיחת צווארי בקבוק
- Raspberry Pi 3b+, 4
- Arduino Uno
- יצירת רשת סלולרית עצמאית בקנה מידה קטן, מבוססת על פרוייקטי קוד פתוח כמו osmocom
- מימוש Software Defined Radio (SDR) באמצעות חומרה כמו Ettus USRP, ופרוייקטים בקוד פתוח כמו gnuradio, gr-gsm & volk
- עבודה עם מגוון מודמים באמצעות פקודות AT, כולל מודמים של Telit, Quectel, Simcom כמו גם מודמים פנימיים במכשירי אנדרואיד
- הבנה של פרוטוקלי תקשורת סלולרית GSM / UMTS / LTE
- שינוי ה- stack של הרדיו של AOSP
- מערכות הפעלה – אפיון הארכיטקטורה של מערכות הפעלה חדשות מבוססות אנדרואיד
- אפליקציות מובייל – אפיון הארכיטקטורה ואפיון המימוש של עשרות אפליקציות מובייל
- מערכות IoT – אפיון ועיצוב מספר מערכות IoT, כולל התוכנה שרצה במכשירי IoT, פרוטוקולי תקשורת יעילים, custom brokers, צד שרת ו- back office, ואפליקציות מובייל המציגות את הנתונים
- מערכות מידע
- אפליקציות אנדרואיד – הובלת הפיתוח של עשרות אפליקציות אנדרואיד native, כולל אפליקציות Java טהורות, כמו גם אפליקציות הכוללות רכיבי NDK, אפליקציות system, מחקר של use cases אקזוטיים בהתאם לדרישות יחודיות של לקוחות
- פיתוח אפליקציות Cross Platform Native באמצעוצ Flutter ו- Dart
אני מפתח תוכנה אומן האגנוסטי לתחביר שפת התכנות המסויימת, עם רמות שונות של ניסיון ב- 25 שפות תכנות וסקריפטים שונות, עם הבנה איך שפות התכנות עצמן בנויות, כמו גם כלים כמו קומפיילרים, פרסרים, לקסרים ו- tokenizer-ים בנויים, איך המשאבים השונים מנוהלים ע"י מערכת ההפעלה. עם למעלה מ-22 שנות ניסיון, הבנה עמוקה של עקרונות פיתוח תוכנה, וניסיון רב במספר דומיינים. אני נהנה להיכנס לכל שפת תכנות חדשה שאני לא מכיר, ונהנה במיוחד מתכנות מרובה תהליכים, סביבות רשת מורכבות וחומרה מוגבלת במיוחד.
רשימה חלקית כוללת:
Rust, Go Lang, Python, Java, Flutter, Dart, Kotlin, C/C++, Bash / Shell scripts, SQL, Antlr, Matlab, Prolog, C# / Visual Basic.Net, Oracle Forms & Reports, PL/SQL, Kix, Perl, x86 Assembly, PHP, ASP.NET, HTML, JavaScript / VBScript, CSS, Ada, Pascal
- תקשורת לינוקס – חומות אש, טבלאות ניתוב, ניתוח תעבורת רשת עם כלים כמו Wireshark
- IP, TCP / UDP, HTTP, MQTT, פרוטוקולים יחודיים
- Bluetooth קלאסי – הבנה של ה- Stack של ה- BT – ובהם פרוטוקולי Controller / Host, ניסיון עם RFCOMM, פרופילים, אבטחה, תהליכי גילוי והתחברות,
- BLE – הצד של ה- accessory והלקוח
- +ANT – התחברות וצריכת נתונים מסנסורים של +ANT
- MySQL
- Oracle
- MS SQL Server – בניית Parser ומערכת שיפור ביצועים אוטומטית
- RavenDB – NoSQL DB
- Hibernate / LINQ (ORM Tools)
- ביצוע אוטומציה ל- DevOps, תהליכי provisioning, deployment & SOTA למספר ארגונים, בדגש מיוחד על אבטחה
- בניית קונטיינרים יעודיים עם Docker ו- Docker Compose
- התקנה וקפוג של docker registry פרטי
- jenkins – פיתוח פייפליינים של פיתוח ובדיקות, ניהול שרת Jenkins פרטי
- balena – הקמת מערכת מלאה של provisioning ו- SOTA לצי מכשירי IoT מבוססת על פלטפורמת balena
- אינטגרציה וניהול כלי בקרת תצורה בצוותי פיתוח – Rational Clear Case, Visual Source Safe, SVN, git, github & bitbucket
- אינטגרציה של כלי פיתוח לתוך תהליכי פיתוח, ייעוץ לארגונים לגבי הכלים המתאימים ביותר לצוותי הפיתוח שלהם – Junit, Selenium, Android’s UI Automator, Robolectric, Espresso, EclEmma, behave, pytest, python’s unittest
- בניית סקיפטים לבדיקות עומסים – Mercury Load Runner
פרוייקטים לדוגמא

בעיניי זהו אחד מתחומי התוכנה המורכבים ביותר, הכולל הבנה עמוקה של תוככי מערכת ההפעלה, יחסי הגומלין בין השכבות ורכיבי התוכנה השונים, והחומרה, מעל 13 שפות תכנות שונות, היכולת לתכנן יכולות חדשות ולשנות באופן כירורגי יכולות קיימות. התחום של פיתוח קושחת אנדרואיד באמת אינסופי בעומקו.
פרוייקטים לדוגמא כוללים:
- שינוי והתאמת מערכת ההפעלה אנדרואיד לדרישת הלקוחות במספר פרוייקטים שונים
- ביצוע התאמות לרכיבי מערכת הפעלה קיימים, אפיון ופיתוח יכולות חדשות – בכל שכבות מערכת ההפעלה – Kernel, Drivers, HAL, libs, Middleware, Framework, System apps.
- הובלת הפיתוח של HelixOS – מערכת הפעלה מאובטחת חדשה מבוססת אנדרואיד
- ביצוע מחקר AOSP מתקדם
- ביצוע סיעור מוחות לפיתוח מוצר חדש עם צוותי פיתוח, חקירת האפשרי, מימוש POC

אני מרגיש כמו ילד בחנות ממתקים עם כל סוגי הלינוקס הקיימים, כל אחד עם החוזקות והמגבלות שלו, כל אחד מתאים הכי טוב למשהו אחר. היכולת לשנות את קוד מערכת ההפעלה רק מגדילה את התאבון שלי, במיוחד כשנוגעים באיזור ה- embedded 🙂
פרוייקטים לדוגמא כוללים:
- שינוי Linux ייחודי הרץ על חומרה ייחודית, בתהאם לדרישת הלקוח. שיפור ביצועים וזמן עליה.
- ביצוע התאמות ב- Gentoo Linux בהתאם לדרישות הלקוח
- בניית Tina Linux ייעודי
- התאמת OpenWrt לסביבה ייעודית

זה מרגש אותי להבין איך נתונים ושיחות קוליות מקודדים, מאובטחים ומועברים, איך השירות הסלולרי מסופק, איך עובדים ביחד הרכיבים השונים של רשת סלולרית, והיכולת לבנות רשת חדשה.
פרוייקטים לדוגמא כוללים:
- אפיון פיתרון LPAD לניהול פרופילי SIM ו- eSIM
- פיתוח JavaCard Applet הרץ בתוך כרטיס UICC SIM, מתקשר עם אפליקציית uSIM ומבצע מניפולציות על קבצי SIM
- יצירת רשת תקשורת עצמאית בקנה מידה קטן, עם כל רכיבי הרשת, על בסיס פרוייקטים בקוד פתוח (osmocom) עבור כוחות הצלה באיזורי אסון
- אפיון ופיתוח מערכת לניהול מודמים מגוונים האוספים נתונים מהרשת הסלולרית
- מחקר יכולות ניתור תאי תקשורת באנדרואיד
- אפיון ופיתוח תוכנת צד ה- Accessory ב- BLE מצד אחד ואםליקציית לקוח BLE באנדרואיד לפרסום וצריכה של מספר דינמי של BLE Charecteristics
- אפיון ופיתוח BT קלאסי בצד השרת הרץ על RPi, ואפיקציות Flutter צד לקוח (אנדרואיד ו- iOS נייטיב)

בשבילי סייבר היא האומנות בלדעת מה לאבטח ואיך.
פרוייקטים לדוגמא כוללים:
- השתתפות בצוות חולשות וניתוח איומים
- ביצוע הנדסה לאחור ושינוי קוד של רכיבי תוכנה סגורים
- בניית מודל איומים עבור פרתון IoT וגיבוש המלצות לצמצום סיכונים
- ניתוח פרתונות סייבר צד שלישי והתאמתם לדרישות הלקוח
- אפיון מנגנון מניעת חדירה ברמת מערכת ההפעלה

המסע שלי כמפתח עצמאי החל אי שם ב- 2010 עם אפליקציות מובייל, כאשר השותף שלי ואני הקמנו את אחד מבתי התוכנה הראשונים בישראל המתמחה בפיתוח אפליקציות באנדרואיד. מאז אותו רגע, האהבה שלי לקמומות האקזוטיים ביותר אליהם אפליקציה יכולה להביא אותנו, היכן שאפשר לדחוק עוד ועוד את הגבולות של האפשרי, רק העמיקה.
פרוייקטים לדוגמא כוללים:
- אםיון והובלת הפיתוח של עשרות אפליקציות אנדרואיד נייטיב כולל אפליקציות Java טהורות, וכאלו הכוללות רכיבי NDK כמו גם אפליקציות system
- מחקר של use case-ים אקזוטיים של ה- Android SDK בהתאם לדרישת הלקוחות
- פיתוח אפליקציית Flutter בעולם ה- ADAS ל- iOS ואנדרואיד

אני מת על IoT! המגוון, העתיד שכבר כאן! בשבילי IoT זה לחשוב בקנה מידה קטן, לחשוב בקנה מידה גדול. לחשוב על צריכת חשמל, תקשורת ואבטחה. לחשוב ניהוליות, ורסטיליות, ושילוביות.
פרוייקטים לדוגמא כוללים:
- אפיון מחדש של ארכיטקטורת פתרון IoT קיימת, מימוש רכיבי צד שרת, פיקוח על פיתוח אפליקציות מובייל
- אפיון ומימוש פיתרון provisioning אוטומטי של מכשירי IoT
- ניתוח ושיפור ביצועים באפליקציית לוח Beagle
- אפיון ופיתוח שרת Bluetooth קלאסי הרץ על RPi, וצד לקוח הרץ כחלק מאפליקציית Flutter נייטיב לאנדרואיד ו- iOS

המספר האינסופי של שימושים לכח איבוד מיניאטורי ויחסי הגומלין שלו עם העולם החיצוני, משובץ כחלק ממוצר גדול יותר, מרתק אותי. ואף יותר מכך – מספר הספקים השונים, מערכות הפעלה יעודיות, או כלל לא ומגוון החומרה. אני נלהב במיוחד לגבי האימוץ של תוכנה בקוד פתוח לסביבות אלו המפשטת משמעותית את התחום הזה, ומאפשרת לנתץ את התלות ביצרן חומרה מסויים, ומביאה חופש נדרש כל כך.
פרוייקטים לדוגמא כוללים:
- פיתוח קושחה ייעודית על בסיס ZephyrOS ל- Nordic MCU
- ביצוע התאמות ל- MCUBoot על SoC משובץ
- ניתוח בעיות ביצועים ושיפור הביצועים על לוח Beagle

משהו באוטומציה תמיד משך אותי. אני מוצא את האיזון העדין בבחירת הכלים הנכונים לטובת שילובם החלק בהליכי הפיתוח, הגברת יעילות העבודה, צמצום חיכוכים בתהליך הפריסה לסביבות השונות, והמיכון של תהליכים סזיפיים, והאבטחה השזורה בכל שלב ושלב – אומנות של ממש.
פרוייקטים לדוגמא כוללים:
- אפיון ומימוש פיתרון DevSecOps מלא העונה על כל צרכי הלקוח במערכת IoT בעולם ה- ADAS, שבה האמינות היא קריטית, עם דגש מיוחד לאבטחה
- ביצוע מחקר והשוואה בין כלים שונים, וגיבוש המלצות לגבי תהליכים מיטביים בסביבת IoT מורכבת
- ביצוע אוטומציה של DevOps, תהליכי provisioning, deployment & SOTA למספר ארגונים, עם דגש מיוחד לאבטחה
- בניית קונטיינרים יעודיים עם Docker ו- Docker Compose
- התקנת docker registry פרטי
- התקנת וניהול שרת Jenkins פרטי לטובת תהליכי בנית תוכנה ותהליכי בדיקות
הספרים שלי ופרסומים אקדמיים
Become an AOSP Developer – בקרוב..
Asynchronous partitioning framework
נתינה לקוד הפתוח

HelixOS היה סטרטאפ שהייתה לי הזכות להוביל, אשר הפך את מערכת ההפעלה אנדרואיד, למערכת הפעלה מאובטחת. זו הייתה קושחה חדשה מבוססת אנדרואיד אשר שיפרה משמעותית היבטי אבטחה שונים של מערכת ההפעלה.
HelixOS דאגה לאבטח את המידע העסקי השמור במכשיר, כך שגם אם הגישה למכשיר הושגה ע"י תוקף מיומן, המידע העסקי נותר מוגן, ואף מנעה דלף מידע ע"י משתמשים מורשים. HelixOS אפשרה את רמת האבטחה הגבוהה ביותר, ובו זמנית ללא שום השפעה על חווית המשתמש.
כיום HelixOS היא פרוייקט בקוד פתוח:
https://github.com/1-Family/HelixOS

Webdriver מאפשר לכלים כמו סלניום לבצע אוטומציה לפעולות של דפדפן.
תרמתי קוד לספריית golang הממשת webdriver:
webdriver: https://github.com/1-Family/webdriver

Onvif הוא סטנדרט גלובלי פתוח לעבודה עם מכשירי IP מגוונים, כגון מצלמות.
תרמתי לקוד של ספריית golang הממשת גישה ל- onvif:
https://github.com/1-Family/go-onvif
איך זה לעבוד איתי
האני מאמין שלי

אני אוהב לכתוב קוד!
אני מוקיר את רגעי ההוויה. תחושת ההרמוניה, אקספרסיביות רדיקלית של רעיונות, כל שורת קוד המשתלבת במקומה המדויק, החלקים הקטנים של הפאזל המרכיבים יחדיו את העולם הגדול. אין לי ספק שאני בר מזל להנות מהעשיה שלי. להיות אחד עם היקום בזמן שאני יוצר.

הקווים המדוייקים, הצבעים המשתלבים, התחושה שמתעוררת לחיים כשאני רואה באמת. היצירתיות המתחילה בשאלה, ממשיכה מתוך שחרור לאינסוף, ומתבטאת על גבי דף נייר, ומתורגמת לאחר מכן לקוד. כך אני שואף ליצור, למצוא תשובות חדשות לאתגרים חדשים בהם אני נתקל.

האם נתקלת אי פעם ב- 2 מוצרים, זהים מבחינת היכולות והמאפיינים החיצוניים, אך שונים לחלוטין מבחינת האיכות?
פלאסטיק זול שאתה יודע שלא ישרוד את הנפילה, מיוצר בפס ייצור המוני ע"י כח אדם לא מיומן, לא אישי כמובן. ומצד שני יצירת מופת. עוצבה בידי רב-אומן, מתוך מחשבה מדוקדקת, כל פרט קטן אשר נלקח בחשבון, משהו שאתה יודע שיחזיק מעמד לנצח?
תוכנה איננה שונה בהרבה. איכות בתוכנה משמעה עבורי ארכיטקטורה יוצאת מן הכלל, אפיון אשר תוכנן בקפידה, המפגש בין הנוכחי, עם המרחב לצרכים עתידיים, תשתית יציבה, אשר על גבה הכל נבנה – נבנה בפשטות, גמישות, ויציבות, המאפשרת תחזוקה קלילה.

אני מאמין במערכות יחסים, בלוודא ששנינו מרגישים נפלא לעבוד אחד עם השני, לדאוג לצרכים ההדדיים שלנו. בעיניי אמון נבנה משקיפות, מלדעת מה בדיוק קורה בזמן שאנחנו בונים את המוצר. לכן במהלך העבודה איתי תמיד תרגישו כחלק מהתהליך, ותהייה לכם ההבנה איפה בדיוק אנחנו נמצאים ולאן אנחנו מתקדמים

אתם תעבדו ישירות איתי. בלי מתווכים, מנהלי פרוייקט, אנשי מכירות וכו'. בלי טלפון שבור. אני אהייה פה לענות על כל השאלות, לדאוג לכל הצרכים בזמן שאנחנו בונים את המוצר ומכינים אותו לייצור.
מה הלקוחות אומרים
מה הלקוחות כותבים

