יום חמישי, 18 באוקטובר 2018

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

לא היה קל לקבל את הראיון הזה. רוב הצעות העבודה דורשות 2-3 שנות ניסיון. אבל איך אתה מקבל 2-3 שנות ניסיון אם אף אחד לא נותן לך הזדמנות? למרות זאת לא ויתרת. עבדת קשה על קורות החיים שלך, ביקשת מהחברים שלך לבדוק אותם. דיברת עם כל אחד שיכול לעזור לך בכל הרשתות החברתיות האפשריות. ולבסוף זה קרה: אתה מוזמן לראיון הראשון שלך כ-QA אי פעם עם עם ראש צוות בדיקות! זה כל כך נהדר. אבל אחרי כמה שעות, אולי דקות, רמות האושר מתחילה לרדת. אתה מבין שיש בעיה קטנה של לעבור בהצלחה את הראיון. עכשיו אתה מתחיל לשמוע קולות קטנים ששואלים: האם אני מספיק טוב? האם אעבור את הראיון? וכמה טובים מיליוני המועמדים האחרים המתחרים איתי על משרה זו? כנראה יותר טובים ממני, אחד ללא ניסיון... כמובן שאתה לא מכיר אותם, אבל ה'לא ידוע' עלול להפחיד אותך עוד יותר... למעשה יש אולי פחות ממיליון, לפעמים אפילו כמה בודדים. הנה מה שאתה יכול לעשות: לנסות להירגע. קל לומר, קשה ליישם, אני יודע. פשוט תעשה משהו שאתה אוהב קצת ואז להתחיל לחשוב על תכנית. עצם המחשבה שאתה אקטיבי כבר תורמת להצלחת הראיון. ראשית, כפי שאתה יודע, הוזמנת לראיון בידיעה שאין לך ניסיון. אז אתה לא צריך להוכיח כישורים יוצאי דופן וידע, כמו שיש לבודק מנוסה. במובנים מסוימים זה קל יותר מאשר מועמד לתפקיד הדורש ניסיון. כיוון שהציפיות בכמה רמות נמוכות מאשר מבעל ניסיון (כפי שהן צריכות להיות עבור חסרי ניסיון) אתה יכול להשתמש במצב הזה בכדי להצטיין! עכשיו שאתה רגוע, זה הזמן לבנות תוכנית. בדרך לראיון הראשון את התוכנית הייתי מחלק מחלק לשלוש:
  1. אם לא עשית את זה עד כה, התחל לעשות את זה עכשיו: ללמוד את המושגים הבסיסיים של מקצוע בדיקות התוכנה. אתה צריך לדעת מה הם מסמכי הבדיקה. מהן בדיקות באג'ייל ומה הוא ווטרפול. מהן רגרסיות ופרוגרסיות. איך באג צריך להיות מדווח וכו'. אם אתה לא יודע את היסודות, המראיין, גם אם הוא עם רצון טוב, יתחיל לחשוב עד כמה קשה יהיה להתחיל הדרכות אתך מאפס ברמה. אם תדע הוא יתרשם מהרצינות שלך. מצד שני אף אחד לא מצפה שתדע לומר מהי הגישה הטובה ביותר עבור פתיחת באג באג'ייל. אל תאבד את המיקוד שלך.
  2. למד על החברה שבה אתה מתראיין ועל מוצריה ככל שתוכל. גם אם אתה יכול להגיד את השמות של מוצרי החברה בזמן שהמראיין מספר לך על עליה, תוכל להרוויח נקודות.
  3. סביר להניח שתקבל אתגר, מוצר עם שאלה של איך לבדוק את זה. וזו המטרה של מאמר זה: איך לעבור את השאלה הטכנית.
השאלה הטכנית: הרבה פעמים השאלה, במיוחד עבור מישהו ללא ניסיון, היא על מוצר שכולנו מכירים אבל מעולם לא חשבנו על בדיקתו (קל לשאול טירון על מוצר שהוא כבר מכיר), וזו תהיה הדוגמה שלי: מכונת ATM - כספומט. אז השאלה היא: איך היית בודק כספומט? לפעמים המראיין ישאיר אותך בחדר כדי לחזור מאוחר יותר, לפעמים הוא יישאר ויצפה שאתה תסביר את תהליך החשיבה שלך, כדי להבין איך אתה חושב. זה מה שהייתי עושה כי לחסר ניסיון זה מה שמעניין. אנסה לענות על השאלה בצורה שתיתן לך מושג כללי יותר של איך לענות על השאלות האלה. כדאי לבקש נייר ועט. זה יהיה לך קל יותר לתכנן ואתה תראה שאתה אדם רציני. עצה:
  1. אם תזכרו את הקטגוריות של אזורי הבדיקה במהלך הראיון, כבר יש לכם סיכוי הרבה יותר גדול לעבור את הראיון!
  2. תגידו לבוחן שאלו הקטגוריות או אזורי הבדיקה לפני שתצללו לעומק.
אזור בדיקה 1: הגדר מה המטרה של המוצר.
בטח, כדי למשוך מטבע מקומי. זה הכל? זה גם נועד להפקיד במזומן והמחאות, למשוך מטבע חוץ, להציג מידע על החשבון שלך.
אני אדבר על המטרה הראשונה והשכיחה יותר. אתה יכול גם להגיד למראיין שגם אתה תדבר רק עליה ואם הוא רוצה אתה יכול להמשיך בסוף לבדיקת המטרות האחרות. אני לא חושב שהם יבקשו את זה. כאן חשוב להראות כי אנו רואים את התמונה המלאה.

מכאן אתה גוזר - איך המוצר עובד בכדי להגיע למטרה? עצה: תמיד לחשוב על הצעדים שאתה עושה כאשר אתה משתמש במוצר בפועל! הפרד את השלבים וכתוב אותם:


** אני לא מומחה ATM ואני לא מנסה לתת תשובה מלאה לאתגר, רק מנסה ללמד אותך איך לחשוב.

שלב 1: המערכת מזהה אותך.
שלב 2: למשיכה ולמטרות אחרות, עליך לקבל את נתוני החשבון הנוכחיים שלך, מצב החשבון.
שלב 3: המערכת מעבדת את הסכום שברצונך למשוך.
שלב 4: המערכת בודקת אם יש לך מסגרת אשראי מתאימה אל מול מצב החשבון.
שלב 5: המערכת בודקת אם הסכום שהזנת בשלב 2 הוא בהתאם למזומן שיש במערכת (למשל אפשר למשוך רק כפילויות של 20).
שלב 6: אם השלבים הבאים עברו זה נותן לך את הכסף, אם לא ... ובכן, היית מצפה להסבר.
שלב 7: המערכת תעדכן את היתרה במידה וכסף נמשך.

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

שלב 2: קבלת נתוני החשבון הנוכחיים שלך:
אם החשבון תקין, אני צריך לקבל את הנתונים שלו. (חִיוּבִי) ומה אם זה לא יכול לקבל את הנתונים? האם יש דרך לעקיפת הבעיה? (שלילי) וכן הלאה. הערה: עד כה אתה לא צריך להיות טכני או מומחה בדיקות עבור זה. אתה צריך להיות אנליטי - וזה מה שהמראיין רוצה לראות. אזור בדיקה 2: חווית משתמש, כלומר UX: לאחר שאימתת את הפונקציונליות של עבודות הכספומט, כדאי לבדוק:
  • אפילו לחשוב על הגובה של הכספומט חשוב - האם זה בסדר עבור כל המשתמשים?
  • האם התהליך היה קל?
  • מסביר את עצמו?
  • ידידותי?
  • יש עזרה בכל שלב? וכו'.

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

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

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


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

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

אין תגובות:

הוסף רשומת תגובה

רשומות פופולריות