100 въпроса при интервюиране на софтуерни разработчици. Част 2 – кодиране и тестване

кодиране, алгоритми, тестване

В тази серия от постове ви предлагам въпроси към кандидатите за работа на позиция “Софтуерен разработчик”. Въпросите ги заимствах от Jurgen Appelo от блога NOOP.nl, който е изготвил един голям списък от 100 въпроса, разделен в 10 категории, според областите на знание, дефинирани от Software Engineering Body of Knowledge (SWEBOK). Препоръчвам ви да си свалите и самия The Guide to SWEBOK от там – една важна и полезна книга за софтуерни разработчици.

В първата част разгледахме въпроси от областите на управлението на изискванията и дизайна, а сега ви предлагам още една доза въпроси, този път насочени към кодирането, алгоритмите и тестването.

Кодиране

  • Кое ви интересува най-много, когато правите ревю на чужд код?
  • Кога използвате абстрактен клас и кога – интерфейс?
  • Освен IDE-то, кои други помощни средства използвате и считате за особено полезни?
  • Как осигурявате вашия код да бъде едновременно бърз и сигурен?

Алгоритми

  • Как ще намерите средния елемент в свързан списък?
  • Как ще напишете функция за обръщане на стринг? Можете ли да го направите без да използвате временна променлива?
  • Знаете ли какво представлява Транспортната задача?

Структури от данни

  • Кой е най-ефективният начин да запишете стойността на един цвят в база данни?
  • Как бихте записали N-мерен вектор в база данни?
  • Как бихте записали резултатите от футболно първенство (отбори и резултати) в XML документ?

Тестване

  • Знаете ли какво е тестване за регресии (regression test)? Как бихте подсигурили, че новите промени няма да “счупят” работещата функционалност?
  • Знаете ли какво е покритие на кода (code coverage)? Какви видове покритие на кода съществуват?
  • Какво бихте направили, за да намалите възможността потребителя да открие бъгове по време на приемните тестове?

Следва продължение.


Ако харесвате статиите в този блог и се интересувате от тематиката, която разглеждаме, за да си гарантирате, че няма да изпуснете публикация, абонирайте се за съдържанието му чрез RSS feed или по имейл.

2 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *