Wednesday, January 16, 2019

חייל משוחר וחושב מה ללמוד? כאן תמצא את כל התשובות!

אז הגיע הרגע שבו השתחררת מצה"ל, מזל טוב!


רגע מה עכשיו מה עושים? מה הלו"ז?
טיול גדול לדרום אמריקה או להתחיל קרייה? אולי אתחיל למלצר ונראה מה יהיה!
אני יודע אני אתחיל תואר... אבל ללמוד עכשיו 4 שנים ואני בכלל לא יודע מה אני רוצה ללמוד.
אוף זה כל כך קשה, מה אפשר ללמוד ומהר?
מה אתה אומר על ללמוד בדיקות תוכנה?


מה? מה זה בודק תוכנה? איפה לומדים? מי הוא מה תפקידו? כמה זה עולה? כמה מרוויחים?
לפני הכל בואו נראה על מה מדובר...

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


אז מי הוא איש בדיקות תוכנה QA?
מטרת העל של תפקיד QA היא לבצע בדיקות של תוכנות מערכות, אם נדבר לדוגמה על אינטל שם בודקים שבבים ומערכת הבדיקות קוראים לה validation (אימות) , אנשי הבדיקות תוכנה אחראים לכך, שבסופו של דבר, התוכנה תהיה איכותית וטובה, יותר ככל שניתן על מנת שהלקוח יהיה מרוצה. אולם תפקידים של אנשי QA לא מסתיים בבדיקות עצמן. זהו תפקיד שמשלב עבודה עם עוד גורמים בחברה עצמה שפועלים למען איכות המוצר, למשל, אנשי פיתוח שמפתחים את המוצר ועד אנשי שיווק ופיתוח עסקי המעוניינים לוודא שהמוצר תואם לדרישות העסקיות של החברה. לכן, זה לא רק תפקיד טכני אלא גם תפקיד הכולל ראייה רחבה יותר ומחייב תשומת לב לפרטים הקטנים בעבודה עצמה תוך התייחסות לתמונה השלמה.
זוכר מה קרה ל- samsung note 7 ? תוכל לקרוא כאן עד כמה תפקידו של הבודק תוכנה חשוב!

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


תחום ה QA מתחלק לכמה רבדים
בודק תוכנה ידני (בעיקר פונקציונליות)
בודק תוכנה של עומסים וביצועים
בודק תוכנה DB
בודק אוטומציה
קיימים תפקידים נוספים לבודק תוכנה אבל אלו העיקריים ביותר.
ב-קורס QA מלמדים אותנו איך לחשוב מחוץ לקופסא, מאיזה כיוון לבדוק את הפיצ'ר החדש שהחברה פתחה,


בואו נראה דוגמא לאפליקציית פייסבוק:
ה-QA קיבל משימה חדשה לבדוק את מסך הכניסה לפייסבוק.
פירוט המשימה: המתכנת הוסיף תמונת פרופיל של המשתמש במסך הכניסה לאחר שהוא שהלקוח עושה Login ו - Logout.
סה"כ נראה פשוט, בודק התוכנה צריך להכניס פרטי משתמש לעשות Login ו - Logout ולהסתכל על התמונה.

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

אבל מה קורה כאשר בודק התוכנה מכניס שם משתמש סיסמא לוחץ על כפתור ה-login ולא מצליח לעשות כניסה למערכת!
פה מגיעה העבודה האמיתית.
מתחילים לבדוק מה השתבש?מה נפגע?
אז מה ה QA צריך לעשות?
ה-QA צריך לרוץ למתכנת ולהגיד לו שה-login לא עובדת ולרוץ בפניקה בכל החברה -  אז לא!!
אחד התפקידים של ה-QA הוא לחקור קצת מאיפה יכולה להגיע הבעיה על מנת לעזור למתכנת לפתור אותה.

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



אני מזמין אתכם להוריד בחינם את המדריך "בודק תוכנה למתחיל" ולהבין כבר היום יותר על בדיקות תוכנה
>> http://bit.ly/2PrJpIa

Wednesday, January 9, 2019

Quality Assurance מה זה?





Undecided if you want to learn QA?

Don't know where to Begin?

here you can find all the answers!




קורס בודק תוכנה מחיר! מה לומדים בקורס בודק תוכנה?

איך נראה היום הראשון של בודק תוכנה בחברת הייטק...

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


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




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


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


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

אגלה לכם סוד בחברות הייטק יש קפה ממש טוב! וגלידות ופינוקים בימי חמישי


לאחר כמה ימים קיבלתי משימה חדשה לבדוק פיצ'ר מסוים, כתבתי system test plan) std) קצר והתחלתי לבדוק את הפיצ'ר החדש.


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


לבסוף סיימתי את הבדיקות והעברתי את המשימה ready to deploy (ככה בדרך כלל נהוג בחברות הייטק).
כשאותו הפיצ'ר עלה ל-production (לייצור) ולקוחות התחילו לעבוד איתו, הרגשתי סיפוק ענק, המשימה הראשונה שלי יצאה לדרך.
עכשיו הזמן לעוד הפסקת קפה))




מתלבט אם ללמוד QA? תקרא פה מה התכונות אופי שאתה צריך שיהיה לך על מנת להשתלב בתעשיית ההייטק


איזה תכונות אופי צריכות להיות לבודק תוכנה?
ריכזנו עבורכם ארבע תכונות מרכזיות:

1. סקרנות



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

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

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

3. חוש טכנולוגי  
חברים רוב המשרות הן טכנולוגיות... אז כמובן צריך רקע טכני קטן בעולם המחשבים.

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

אין צורך להרביץ לאף אחד... אבל כן בודק תוכנה צריך להיות לפעמים חוצפן!!! ואני אסביר...
נכון זה לא כיף להתווכח עם אנשים ולנסות להוכיח את הטענה שלך, אבל לפעמים צריך!
אתן לכם דוגמה קטנה:
יום שני אמצע שבוע המתכנת פיתח משהו חדש למערכת בחברה, אבל… הוא לא עשה את זה כפי שמוגדר בהגדרה! (פה מגיעה החוצפה) איש הבדיקות ניגש בשקט למפתח (המתכנתים צריכים שקט על מנת להתרכז למרות שרוב היום הם עם אוזניות ותאמינו לי והם לא מקשיבים למוצרט או בטהובן) הבודק תוכנה שואל האם הפיצ'ר צריך להיראות כך? המתכנת עונה לו "כן כמו בהגדרה..."
אז לא!
איש הבדיקות מסביר למתכנת שזה לא כך והוא עשה טעות, כמובן בצורה יפה והוכחות עם צילומים של ההגדרה (לפעמים גם צריך לגשת למאפיין של המוצר ולשאול אותו "למה התכוון המשורר" אבל הרוב זה מובן just in case)
רוב הפעמים המתכנת יסכים עם איש בדיקות ויתקן את הפיצ'ר, אבל קורה שצריך קצת להביא את הטענה שלך :)  ופה צריך סבלנות ולחייך כי סה"כ כולם רוצים שהעבודה תמשיך והלקוחות יהנו מהמוצר.


האם בכלל צריך בודק תוכנה בחברות ההיטק?

האם המקצוע בודק תוכנה הוא מקצוע חשוב? ואיך חברות ההייטק מסתכלות על בודקי התוכנה
אחרי שתקראו את הכתבה אתם תבינו למה המקצוע בודק תוכנה מאוד מאוד חשוב, ומה קורה
כאשר לא בודקים כמו שצריך!


האם שמעתם את הסיפור על סמסונג גלקסי נוט 7?
כן כן הזה שאסור היה להכניס אותו למטוסים!
רגע איך זה קשור ל QA?
מיד תבינו…


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

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

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


בנוסף חברת סמסונג הפסידה המון כסף בגלל הנוט 7, ולא נדבר על אמון הציבור.
בשביל קצת לסבן לכם את האוזן סמסונג, נאלצה לעדכן את תחזיות הרווחים שלה ולמחוק מהן כ-2.3 מיליארד דולר.
במקביל, צנח שווי החברה ב-17 מיליארד דולר!
לא נעים :(


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


משהו בסמסונג נרדם בשמירה
הבחור פספס בדיקה שנקראת בעולם ה QA "בדיקת עומסים"
תפקידה של בדיקת עומסים היא לבדוק לדוגמה מה הטמפרטורה המקסימלית שבה
הסוללה יכולה להחזיק מעמד לפני שהיא תתחיל להישרף או תפסיק לעבוד  (לא משהו שמשתמש רגיל יכול לעשות)
בשביל זה יש מערכות מסוימות שחברות מפתחות לעצמם לדוגמה לחברת

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


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


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

.


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


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


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



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