Jestem programistą C ++. Wiem, jak Windows działa na poziomie natywnym, ale nie jestem wielkim ekspertem w C # i .NET. Teraz potrzebuję programisty C # w moim zespole (wszyscy moi programiści to C ++). Jak mogę zatrudnić świetnego programistę C #, jeśli nie znam C # na dobrym poziomie? Jak zadawać pytania, sprawdzać, czy odpowiedzi są świetne, czy głupie.
15
Odpowiedzi:
Czasami spotykam się z problemem przeprowadzania wywiadów z programistami, którzy przede wszystkim mają doświadczenie w C ++, których nie znam tak dobrze jak oni. Moja strategia to:
najczęściej zadaję ogólne pytania dotyczące programowania, algorytmy, projektowanie OO, jak refaktoryzować, co sprawia, że dobry test jednostkowy itp. Dodaję kilka ogólnych pytań dotyczących stylu języka, więc dla C ++ mogę zapytać o zarządzanie pamięcią i czas życia obiektów dla C # Mogę zapytać o to, czy możesz mieć wyciek pamięci podczas korzystania ze śmietnika?
spróbuj dowiedzieć się, jak nauczyli się języka, jakie książki przeczytali itp.
sprawdź, czy napisali znaczną ilość C ++. Wejdź w głąb, kiedy go użyją, ile, co zrobili i dla kogo. Następnie spróbuj to sprawdzić w miarę możliwości, korzystając z ich odniesień.
Jeśli potrafią dobrze odpowiedzieć na trudne pytania dotyczące projektu i teorii i napisali przyzwoitą ilość C ++, to spodziewam się, że będą przynajmniej w połowie dobrzy i prawdopodobnie będą w stanie dość szybko nauczyć się brakujących rzeczy.
źródło
Prawdziwym testem dla wszystkich programistów jest to, jak dobrze rozwiązują problemy. Doskonałe narzędzie do rozwiązywania problemów z jedynie przeciętnymi umiejętnościami C # będzie dla ciebie o wiele bardziej cenne niż bóg C # (dess), który nie potrafi zrozumieć, jak radzić sobie z wprowadzaniem formularza.
Spróbuj znaleźć rozsądny prawdziwy problem ze swojej domeny biznesowej i pozwól mu rozwiązać go w języku C #. Znasz domenę i wiesz, jaki powinien być wynik. Możesz przejrzeć logikę samodzielnie i zadawać pytania, ponieważ podstawowy przepływ i polecenia w języku C # nie różnią się znacząco od języka C ++.
Jeśli nadal jesteś zaniepokojony, wyślij jego gotowy kod do jednego z Twoich znajomych w języku C # lub partnera biznesowego i zapytaj go, czy może go przejrzeć i przekazać opinię.
źródło
Zakładam, że naprawdę potrzebujesz programisty C #.
Najpierw dowiedz się, jakiego rodzaju zadań potrzebujesz, aby je wykonać.
Następnie zapytaj ich, w jaki sposób wykonają te zadania. Zapytaj, jak wykonali wcześniej takie zadania.
Podczas rozmowy poproś innych wnioskodawców o ocenę proponowanych rozwiązań. Proponuję zasiać rozwiązania takim, o którym wiesz, że nie zadziała, a być może takim, który Twoim zdaniem jest dobry. Pomoże to ustalić, w jaki sposób wnioskodawca może współpracować z zespołem. Sterowanie powinno pomóc wyeliminować tak ludzi i zabójców pomysłów .
Powinno to zapewnić ci dobrą grupę kandydatów z pomysłami, które są akceptowane przez ich rówieśników i powinny mieć możliwość pracy ze swoim zespołem.
źródło
odbieraj wywiad, gdy prowadziłeś programistę w C ++. nie skupiaj się zbytnio na technologiach C ++, ale raczej na rozwiązywaniu problemów, OOP i programowaniu w ogóle. Jeśli zatrudniłbyś go jako programistę C ++, który chce zrobić C #, to byłby dobrym zatrudnieniem.
źródło
Będąc programistą .Net i mając do czynienia z facetami z C ++, myślę, że nadal chciałbyś dowiedzieć się, czy ktoś wie przynajmniej coś o platformie .Net: wyrzucanie elementów bezużytecznych, GAC, JIT, NGEN, wartość vs. typ odniesienia, cel IDispose, itp. Dobra lista pytań jest dostępna na blogu Scotta Hanselmana . Nie ma prostego sposobu, aby dowiedzieć się, czy odpowiedzi są prawidłowe, jeśli sam nie rozumiesz pytań, więc warto zapoznać się z omówieniem .Net w witrynie MSDN lub wybrać dobrą książkę, na przykład Essential C # 4.0.
Jeśli szukasz programatora GUI, bardzo pomocne jest poproszenie o wdrożenie czegoś prostego, takiego jak kalkulator, łazik marsjański lub cokolwiek innego. Można podać dzień lub dwa. Zobaczysz od razu, czy GUI jest użyteczne i ładne, na przykład, jak się zachowuje po zmianie rozmiaru.
źródło
Zacznij od sprawdzenia odpowiedzi na pytania w języku C # na SO ..
źródło