תחומי אחריות עיקריים:
פיתוח ותחזוקה של ספריות ויישומים בC++ עבור Linux.
בנייה וניהול של קבצי .so (ספריות משותפות בלינוקס) וחשיפתם לשימוש מתוך C # באמצעות P/Invoke, C ++/CLI או שיטות אינטגרציה אחרות.
הסבת קוד C ++ קיים מWindows לLinux (שימוש בGCC/Clang).
אופטימיזציה של קוד C ++ קיים לשיפור ביצועים (עומסי CPU ועומסי קלט/פלט).
כיוונון שימוש בזיכרון, צמצום דליפות זיכרון וביצוע פרופיילינג ודיבאג באמצעות כלי Linux.
הבטחת תאימות, יציבות וביצועים גבוהים של מודולי C ++ על פני הפצות Linux שונות.
שיתוף פעולה עם מפתחי C # כדי להבטיח אינטגרציה חלקה והתאמה בין הממשקים.
כתיבת קוד נקי, מתועד היטב ומכוסה בבדיקות יחידה (Unit Tests).
דרישות:
חובה:
שליטה חזקה בC++ ( C ++11/14/17) וניסיון בשיטות פיתוח מודרניות.
ניסיון מוצק בפיתוח לינוקס: קומפילציה עם GCC/Clang, עבודה עם Makefiles/CMake, שימוש בכלי דיבאג ופרופיילינג כמו gdb, valgrind, perf, gprof או heaptrack.
ניסיון ביצירה ותחזוקה של ספריות משותפות (.so) בלינוקס.
ניסיון באינטגרציה בין מערכות: עטיפת ספריות native לשימוש באפליקציות C # באמצעות P/Invoke, SWIG, C ++/CLI או שיטות אחרות.
ניסיון בהסבת פרויקטי C ++ מWindows לLinux.
יכולות אופטימיזציית ביצועים: ניתוח CPU וזיכרון, שיפור אלגוריתמים והפחתת השהיה.
ניסיון בכיוונון זיכרון וזיהוי דליפות זיכרון בלינוקס.
ניסיון עם מערכות ניהול גרסאות (למשל Git).
יתרונות (רצוי):
היכרות עם פיתוח C ++ בWindows ואתגרי מעבר מWindows לLinux.
ידע ב.NET או C # וניסיון באינטגרציה של מודולים native בתוך סביבות מנוהלות (managed).
היכרות עם כלי קונטיינרים כמו Docker לפיתוח ובדיקות.
ניסיון עם CI/CD לפרויקטי C ++.
הבנה בתכנות רבתהליכי (multithreading) המשרה מיועדת לנשים ולגברים כאחד.