שאלה כללית ....

ינוקא1

New member
שאלה כללית ....

הי חברים , אני מנסה לעשות הסבה מקצועית בגיל מבוגר יחסית - 40 עוד מעט.

בעוד כחודשיים אני רוצה לעשות RHCSA , אחר כך אני מתכווין ללמוד python , ואולי גם לעשות הסמכה של AWS (את המבחן הבסיסי , נראה לי שהם קוראים לזה associate) , ואז לנסות למצוא עבודה.

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

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

אני מבין שרובכם עובדים בתחום , והשאלות שלי הן קודם כל :
1. האם המסלול הזה נראה לכם הגיוני ?
2. אם הייתם היום צריכים לבחור על כיוון , והייתם במצב כמו שלי , מה הייתם ממליצים לי ללמוד ? השאלה הקריטית היא מה ללמוד כדי להגביר את הסיכויים שיקבלו אותי לעבודה כלשהיא בתחום .... כמובן בהתחשב בהבנה שלכם את הכיוונים שאליהם הולך התחום.
3. לגבי python - אני מבין שבתוך השפה עצמה יש הרבה תחומים , במה כדאי לי להתמקד כדי שזה "ישתלב" עם המסלול ? (יש לי מעט רקע בסיסי בתכנות , אבל דווקא בjava , וקצת בjs)

אז זהו , ותודה רבה !
 

BravoMan

Active member


השאלה הראשונה שאני רוצה לשאול אותך, ושאתה צריך לשאול את עצמך היא:
למה הייטק?
&nbsp
ספציפית, מה הסיבה שאתה רוצה לעשות הסבה דווקא למקצוע שאתה רוצה לעשות הסבה אליו?
&nbsp
השאלה השנייה שאנו צריכים לברר היא:
לאיזה מקצוע בדיוק אתה רוצה לעשות הסבה?
&nbsp
לינוקס זו רק מערכת הפעלה. משהו שמריץ מחשבים.
python היא כלי - כמו מברגה, פטיש וכו'
&nbsp
אף אחד מהם אינו מקצוע, ולעשות קורס בהם לא יאפשר לך למצוא עבודה.
&nbsp
יש המון קורסים שמלמדים דברים נקודתיים כמו היסודות של Python.
או הסמכות כגון RHCSA.
&nbsp
אף אחד מהם אינו נועד לבדו לאפשר לך להפוך ממאבטח לבעל מקצוע אחר.
&nbsp
כדי לתכנן מסלול צריך קודם כל להבין מה היעד:
מה בדיוק אתה רוצה לעשות?
&nbsp
המילה "הייטק" מכילה בתוכה עולם ומלואו.
יש אנשי פיתוח תוכנה, שמתחלקים להמון תחומים.
יש אנשי ניהול רשתות שעושים דברים שונים לחלוטין ממפתחי תוכנה.
יש DBA ועוד כל מיני כאלה.
יש אנשי QA - ידני ואוטומטי.
אינטגרטורים.
תומכים טכניים.
DevOps שמנסה לאחד בין שני התחומים הראשונים שרשמתי.
&nbsp
ועוד המון דברים.
&nbsp
אי אפשר להמליץ לך מה ללמוד, אם כל מה שאנו יודעים עליך זה שאתה מאבטח בן 40 שפתאום רוצה לעבוד בהייטק.
&nbsp
בכל זאת, לפני סיום, אנסה לענות על שאלותיך, עד כמה שניתן בנסיבות:
1. המסלול הזה לא נראה לי הגיוני.
מעולם לא שמעתי על אדם שקם יום בהיר אחד בשנות ה-40 שלו והחליט להמיר מקצוע לתחום שאין לו שום קשר אליו, ועוד תחום שהוא עתיר ידע ויש בו המון תחרות מצד צעירים.
&nbsp
2. לא יודע מה הייתי בוחר אם הייתי במצבך.
כנראה שהייתי קודם כל עושה שיקולים כלכליים ומחפש מקצוע בר השגה.
לחלופין, הייתי אולי שואף למקצוע שיש לי משיכה אליו.
&nbsp
3. הפוך - בתוך python אין תחומים. שפת תכנות היא רק כלי.
יש python בתחומים רבים בתעשייה, אבל ידיעת השפה לבדה לא מספיקה להשתלב בשום תחום, כפי שנגר לא יכול לעבוד עם פטיש אחד, בלי שיש לו אפילו ידע איך מודדים זווית או מנסרים פיסת עץ.
&nbsp
צר לי אם אני נשמע לך מבאס ושלילי, אבל אתה מחפש לעשות מהפך ממש לא פשוט, שלהערכתי מעטים מאוד האנשים שיכולים לבצע אותו בהצלחה.
&nbsp
אולי אתה אחד מהם, אני לא מכיר אותך ולא יודע.
רק ניסיתי להסביר לך את המצב בצורה מציאותית ככל האפשר.
&nbsp
ממליץ לך לשאול גם כאן:
http://www.tapuz.co.il/forums/forumpage/308
&nbsp
בהצלחה!
 

ינוקא1

New member
טוב , תודה על הכנות

אני גם אהיה כנה :

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

גם כרגע אני לומד להסמכה של system admin בלינוקס. אני לומד דרך האינטרנט ובאנגלית (דרך linux academy ו udemy), ובסך הכל אני מסתדר.
אינני חושב שאני פחות טוב ממישהו אחר כולל מצעירים ממני.

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

אז למה דווקא היי טק ?

כי :
1. יש ביקוש לתחומים הללו של ההיי טק , והוא צפוי לגדול.
2. יש בתחום משכורות טובות.
3. את הכל אפשר ללמוד מאתרים באינטרנט ובמחירים מצחיקים.
4. אני מאמין שיש לי את הכישורים לכך.

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

לגבי "לאיזה מקצוע אני רוצה לעשות הסבה" , על זה בדיוק היתה השאלה שלי.

בתחילת הדרך ניסיתי ללמוד WEB , אבל הרגשתי שמשהו חסר. הרגשתי כאילו הכל שיטחי מידי.

ואז הגיע למקום שעבדתי בו בחור שנפלט מחברת הי טק (נפלט בגלל האישיות שלו ולא בגלל חוסר ידע. לשמחתי הוא בינתיים מצא עבודה בתחום) הוא אוטודידקט מומחה בלינוקס ובפייתון , וגם עסק ב web dev בעזרת django.

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

זה מאוד מצא חן בעיני צורת הלימוד\ההסתכלות הזו , כי הבנתי שזה למעשה נותן ידע של "כל המחשב" מלמטה למעלה.

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

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

זהו , בגדול.
לילה טוב.
 

BravoMan

Active member
אמונה בעצמך זה טוב...

רק שכדי להתקבל לעבודה בשכר, אתה צריך לשכנע את המעסיק, ולגרום לו להאמין בך.
&nbsp
בוא נתחיל ממה שאתה רואה כ-"מבנה המחשב":
המודל שלך שגוי.
&nbsp
כפי שניסיתי להסביר לך, "שפת תכנות" היא כלי.
היא לא מעל מערכת הפעלה ולא מתחת.
&nbsp
כל דבר שרץ במחשב, החל מהחלק הנמוך ביותר של מערכת הפעלה (ה-kernel) שמתחתיו באמת יש רק חומרה, ועד לדבר שאתה קורא לו Web (שהוא למעשה אוסף של דברים), כתוב בשפת תכנות כלשהי, ולפעמים ביותר מאחת.
&nbsp
ספציפית, יישומי Web לרוב מערבים מספר שפות.
&nbsp
יישום "Web" הוא למעשה יישום שמורכב ממספר חלקים:
יש את החלק שנקרא Front End. זה החלק שרץ על המחשב של המשתמש.
למשל, כשאתה נכנס לכתוב הודעות באתר תפוז, מה שאתה רואה בדפדפן זה ה-Front End של מערכת Web תפוז.
&nbsp
בשביל לכתוב כזה, צריך להכיר שפת תכנות שנקראת JavaScript ושתי שפות עיצוב: HTML ו-CSS.
&nbsp
ואז יש את ה-Back End: זה החלק שרץ בשרת - מחשב מרוחק אליו אתה מתחבר דרך האינטרנט.
&nbsp
השרתים של תפוז שומרים את כל ההודעות שלנו, ואת חשבונות המשתמש שלנו, ומייצרים ושולחים את התוכן הנחוץ לדפדפן.
&nbsp
כדי לפתח Back End - צד שרת, צריך להכיר כלים רבים:
קודם כל, עבודה מול בסיסי נתונים, למשל שפת SQL.
שנית, שפת שרת כלשהי, כגון Python או PHP.
&nbsp
אבל שוב - שפה בלבד לא מספיקה. צריך להכיר את הסביבה, דברים שנקראים Framework (כמו DJango או Flask).
&nbsp
צריך להבין בגדול איך הכל עובד ואיפה אתה משתלב במערכת.
&nbsp
גם אני אוטודידקט - אני עובד כמפתח תוכנה (לא Web) כבר יותר מעשור, בלי שאי פעם סיימתי תואר.
אבל, לקח לי שנים להגיע לעבודה הראשונה שלי.
והמשכורת בהתחלה היית רחוקה ממה שרוב האנשים מדמיינים שמשלמים בהייטק.
&nbsp
המסלול הזה - של הגעה עצמית, לא קל, ולא קצר.
רוב האנשים שאני מכיר שעשו אותו, כמוני, אהבו מחשבים מגיל קטן - חלמו ונשמו את התחום, ולכן הצליחו לצבור לבד ניסיון מוכח, שאפשר להם להתקבל לעבודה.
&nbsp
כשבאתי לראיון הראשון שלי לא באתי עם אוסף קורסים - באתי עם תיק עבודות.
תוכנות אמתיות, שימושיות ועובדות שכתבתי, ויכולתי להציג כהוכחה לידע וכישורים שלי (בהיעדר תואר).
&nbsp
ועדיין הייתי צריך לעשות מטלת בית רצינית כדי להתקבל.
&nbsp
והתחושה שלך שמשהו חסר?
היא תחושה נכונה מאוד!
&nbsp
ככל שעבר הזמן, גיליתי יותר ויותר שכמה שחשבתי שאני יודע - למעשה אני לא יודע עוד המון!
לפעמים גיליתי שאני מפספס דברים בסיסיים, דברים שהייתי לומד לו הייתי מגיע לתחום במסלול המקובל.
&nbsp
אני לא יכול לומר לך בגיל 40 ותחת לחץ פיננסי ללכת לעשות תואר של 3 שנים.
אבל בכנות - לא משנה לאיזה תחום תפנה, יש לך המון ללמוד!
&nbsp
במיוחד אם אתה רוצה להיות מפתח Web - יש המון חומר שאתה צריך.
נכון - אפשר ללמוד אותו לבד, אבל אתה צריך זמן ללמוד, לתרגל, לעשות.
&nbsp
אם אינך יכול לנצל את זמן השמירה ללמוד, והשמירה לא משאירה לך זמן ללמוד, ואינך יכול להרשות לעצמך להיות מובטל כדי להשקיע את כל הזמן בלימודים - אתה בבעיה.
&nbsp
אולי תתחיל לחשוב על כיוון אחר: עבודה זמנית שונה משמירה שכן תאפשר לך את מרווח הנשימה שנחוץ ללימודים.
&nbsp
כי אין דרך קסם מהירה "להיכנס להייטק".
אפשר ללמוד לבד, אפשר לקחת קורסים - אבל לצבור את הידע, ויותר חשוב - תיק עבודות, שנחוץ כדי שמישהו יקבל אותך כמפתח Web, לוקח המון זמן והשקעה.
&nbsp
ו-DevOps?
היה דיון על זה לא מזמן בפורום 308 השכן (זה שהמלצתי לך לשאול שם).
&nbsp
אומרים שבאמת משלמים טוב למשרות האלה.
אתה יודע למה?
כי אפילו מפתח עם יותר מעשור ניסיון כמוני, אין לו את הידע הדרוש והמיומנות הדרושה לאייש משרה כזו!
&nbsp
זו משרה ייחודית שדורשת שילוב של שני תחומים שעד כה היו נפרדים: System ופיתוח.
מי שמתמקצע באחד, לרוב לא מכיר את השני, ולכן קשה למצוא מקצוען אמתי שמשלב את שניהם.
&nbsp
לרוב גם מדובר במשרה עם המון אחריות ולחץ: אם השירות של החברה נופל לכמה שעות, הנזק בקלות יכול לזנק למיליונים.
&nbsp
כל מה שנותר לי להמליץ לך זה:
רגליים לקרקע, ועיניים למטרה.
&nbsp
אתה רוצה להיות מפתח Web? סבבה. תתחיל ללמוד. אבל תשקיע. אל תבכה שאין לך זמן.
כי אם אין לך זמן, לא תוכל ללמוד את מה שאתה צריך.
&nbsp
אין בהייטק מקצוע קסם שאפשר להשקיע טיפה ולהתחיל לקבל משכורת יפה (או משכורת בכלל).
&nbsp
כבר עדיף לך להפנים שגם אבטחה זה מקצוע שאפשר להתפרנס בו בכבוד.
אני אישית לא מזלזל במאבטחים.
אני כן מזלזל במי שחושב שהוא יכול פשוט לבוא ל-"הייטק" יום בהיר אחד, ולהתחיל לגרוף בוכטות.
&nbsp
כי זה מראה חוסר כבוד למקצוע וזלזול באנשים שעובדים בו.
וזו גם אשליה שתגרום לאנשים לבזבז זמן.
&nbsp
אם זמנך יקר, תחשוב על זה טוב טוב!
 

ינוקא1

New member
תודה שוב ,

אני מסכים עם כל מילה שלך (וזה לא שאתה צריך את ההסכמה שלי.....).
&nbsp
בשנה שעברה כשלמדתי web אז למדתי html css וjs וברור לי שיש עוד המון עבודה.
אני קורע את עצמי , ואני יודע שזה לא מספיק.
&nbsp
ואני מבין שהמכשול שלי הוא קודם כל להתקבל לעבודה הראשונה עם נתוני פתיחה די גרועים מבחינת גיל וכו' , ובשביל זה חשוב לי להגיע עם הסמכות רלוונטיות , וגם עם תיק עבודות.
&nbsp
לכן אני שואל על "הדרך הקצרה ביותר".
אני לא שואל על ה"למה" , אני שואל על ה"איך".
איך לשפר את הסיכויים שלי.
&nbsp
ברור לי שגם "הדרך הקצרה" הזו דורשת טונות של השקעה , ואני מוכן לקרוע את עצמי.
&nbsp
הסיבה היא שאין לי שום ברירה אחרת , ואין לי גם מה להפסיד..
&nbsp
להיות מטפל אינני רוצה , ולהיות מאבטח עד סוף החיים פשוט לא בא בחשבון. אני לא מזלזל במקצוע האבטחה , אבל מבחינתי זה בזבוז. אחרי כל משמרת אני מרגיש שהמוח שלי מתייבש עוד קצת.
&nbsp
ולשמחתי יש היום יתרון שלא היה לך לפני 10 שנים - היום ניתן ללמוד כמעט כל דבר באינטרנט , שזה מקצר את הדרך באופן משמעותי.
&nbsp
אני לא יודע האם אלך על web , יש לי עדיין התלבטויות לגבי המסלול הרצוי - כמו האם ללמוד אחרי הלינוקס פייתון , או לחזור לjava script .
&nbsp
בשביל הדברים הללו אני שואל כאן.
ואני לא מצפה לעשות בוחטות על ההתחלה ולא שום דבר מהסוג הזה.
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
 

ינוקא1

New member
לגבי זה

שמערכת הפעלה היא "קומה ראשונה" :
כמובן שגם מערכת ההפעלה עצמה כתובה בשפות תכנות.
&nbsp
מה שהתכוונתי להגיד זה כשלומדים מערכת הפעלה , למשל לינוקס , אז אתה לומד על storage,packages , networking , processes , security ..... כל מיני דברים שנמצאים כל הזמן ב"רקע" של המחשב ואחראים לפעילות ה"רגילה" שלו.
ולזה קראתי "קומה ראשונה".
&nbsp
אני מאמין שאם מישהו עוסק רק בפיתוח ואין לו את הרקע וההבנה הזו , אז משהו חסר לו - גם כמפתח.
וזה מה שהרגשתי כשלמדתי web - שכאילו הכל היה "מרחף באוויר". זה כמו לבנות קומה שניה בלי בסיס.
&nbsp
אני מאמין שכאשר יש את הבסיס הזה - הבנה טובה של מערכת הפעלה , ואחריו הבנה טובה בשפת תכנות , אז אם מישהו ירצה ללכת לפתח אפליקציות - יהיה לו בסיס טוב. ואם הוא ירצה ללכת ללמוד רשתות , יהיה לו בסיס טוב , ואם הוא ירצה ללמוד סייבר , יהיה לו בסיס טוב וכו' וכו'.
כי הוא בעצם נוגע בכל הרבדים של המחשב.
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
 

BravoMan

Active member
בזה אתה צודק!

חייבים להכיר את הסביבה עליה תרוץ התוכנה שלך.
&nbsp
שים לב, שספציפית בעניין Web, יש עוד "קומה" מעל מערכת הפעלה שאתה חייב להכיר:
אם אתה מפתח צד Client, יש הבדל בין דפדפנים שונים.
&nbsp
הוא לא אמור להיות, אבל הוא קיים, כי מה לעשות חברות שונות מפתחות אותם, ולא נצמדות לתקן באותה צורה.
&nbsp
צריך להכיר את הדפדפן כי הוא עומד בין הקוד שלך למערכת הפעלה.
&nbsp
מהצד השני - הצד של השרת, יש את שרתי ה-Web השונים: Apache, ngnx וכו'.
ויש DB שונים: MySQL, Oracle, MSSQL (כן, היום גם MS רצים על לינוקס!)
&nbsp
כל אלה יעמדו בין הקוד שלך למערכת הפעלה.
(לא כמשהו שמפריע, אלא עוד מדרגה להתבסס עליה)
&nbsp
וזה עוד לפני שנכנסים לדברים כמו docker, מכונות ווירטואליות, בסיסי נתונים שאינם SQLים כגון Mongo DB.
&nbsp
תאורטית, שפות כמו Python אמורות להיות cross-platform ולבודד אותך ממערכת הפעלה, בפועל, בלי הבנה מספקת בבסיס, לא תוכל להיות מתכנת טוב, בדיוק כמו שכתבת.
&nbsp
אתה לא צריך הסמכת RHCSA כדי להיות מתכנת Web Python, אבל הכרות טובה עם המערכת כן.
כמובן, שאם תעבור את ההסמכה זה לא יזיק, בתנאי באמת תבין את החומר, ולא סתם תלמד כדי להצליח לענות על שאלות נקודתיות.
&nbsp
והיא כן נחוצה אם תבחר ללכת על ניהול רשתות.
למעשה, עד כמה שידוע לי, שם הסמכה זו ודומיה מוכרות ע"י המעסיקים.
&nbsp
בכל אופן, הסיבה שלא עניתי לך עד עכשיו "מה ללמוד" או "במה להתרכז", היא שאני לא מכיר תחום או קורס נקודתי כזה.
יש מכלול ידע גדול וחשוב שצריך לכסות כדי שתהיה לך יכולת לבנות תוכנה משמעותית.
&nbsp
כאמור, אני פחות מכיר את תחום ניהול רשתות, אז אם אתה מכוון לשם, לא אוכל להגיד לך איזה חומר בדיוק צריך.
אני כן יודע שתצטרך להכיר איך עובדים נתבים וסוויטצ'ים (ברמה הלוגית, לא ברמה של צ'יפים), איך מגדירים Firewall למיניהם, למשל איך עובדים עם IPtable, וכו'.
&nbsp
חוזר על ההמלצה לשאול בפורום 308 (עבודה בהייטק).
זה פורום יותר פעיל מהפורום הזה, ואפילו המנהל שלו הגיע לתעשייה ללא השכלה פורמלית (כך הוא כתב פעם), אז תוכל למצוא שם עוד כמה אנשים שעשו את הדרך שאתה מחפש לעשות, ולשמוע דעות אחרות חוץ משלי.
&nbsp
כמובן יש שם גם כמה טרולים, אבל אני בטוח שתוכל לזהות אותם ולהתעלם.
&nbsp
בהצלחה!
 

ינוקא1

New member
תודה רבה רבה

על ההתיחסות , על הכנות ועל הידע.

לגבי עבודה עם דפדפנים שונים בweb -
בשנה שעברה עשיתי קורס אינטרנטי טוב ב html css , הוא היה על backets editor , ובסוף הקורס המנחה הראה plugin לbruckets שידע לעשות השלמות ושינויים לקוד כך שהקוד יתאים לכל הדפדפנים הנפוצים.
(אני זוכר זאת לפחות בקטע של css , אולי גם יש כזה ל js . אני מעריך שגם ב atom יש פלאגין כזה).

התייעצתי עוד , וכרגע נראה לי שאחרי הlinux אחזור ל web -
js , אחרי זה node js ופלטפורמות כמו meteor ו electron.

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


שיהיה לך יום נהדר !!!!
 
למעלה