· 5 years ago · Feb 21, 2020, 11:38 AM
1PYTANIA NA PYTHON DEVELOPERA:
2- jaka jest aktualna wersja pythona i Django?
3- znajomość Scrum/Agile
4- Co to jest system kontroli wersji, jakie znasz, itp.
5- Czym się różni python 2 od pythona 3?
6- Pytania o idiomy Pythona (konstrukcje typowe dla języka Python, rzadko spotykane w innych językach) -i diomy mają pokazać czy programujesz “pythonic way” czy Twój kod będzie bardziej przypominał C niż Pythona
7- Podstawy CS
8- Jakieś wzorce projektowe
9- PEP8
10- Korzstanie z bibliotek i modułów (co to jest)
11- mutable vs immutable z przykladami co się dzieje pod spodem jak zrobie np.
12a = (1, 2, 3)
13a += (4, 5)
14- Typy danych w Pythonie - Jakie są podstawowe typy danych w pythonie?
15- Struktury danych
16- Czym się charakteryzują tuple/słowniki/listy i gdzie się je wykorzystuje?
17- różnica tuple a listy
18- Czy tuple w pythonie są naprawdę niemutowalne
19- Operacje na listach w stylu slice, pop, remove
20- sort vs sorted
21- Operacje na dictach (co może być kluczem słwonika?co to jest dict i jak działa, z hashowaniem włacznie (Co jest pod spodem dicta, jaka struktura danych teoretyczna?, Zachowanie kolejności dodania itemów do słownika w pythonie 3.7, czym?)
22- Co to jest iterator, generator (yield, List Comprehension vs Generator Expressions), decorator
23- Programowanie obiektowe
24- Class method vs static method
25- Jakie znasz narzędzia do dbania o jakość kodu, używasz ich? (PEP8, Flake8, Pylint)
26- Jakie testy i przy użyciu jakiej biblioteki pisałeś? (unitest, pytest)
27- Twoja ulubiona zewnętrzna biblioteka?
28- Co to jest pip?
29- Jak się tworzy klasę?
30- Czy init to konstruktor?
31- Co to jest context manager?
32- Co to są argsy i kwargsy?
33- List comprehension (rodzaje, prosty przykład)
34- Jakie znasz metody specjalne/magiczne?
35- Czy znasz jakieś web frameworki?
36- Jak należy przetwarzać kod html?
37- Czy znasz jakąś bazę danych? (pytania o SQL, inner vs outer vs left vs right joiny, pisanie prostego query do 2-3 joinow max)
38- Jakie znasz typy danych dostępne w tej bazie?
39- Możliwe pytania o NoSQL (o ile używaja)
40- Do czego jest select/like/group by/top/date/having?
41- Co to jest API? Co to jest REST?
42- Słyszałeś pojęcia SOLID lub GRASP?
43- Skąd czerpiesz wiedzę, co ostatnio czytałeś?
44- Nowości w Pythonie 3.6
45- Pytanie o ORMa, dodatkowe punkty jezeli wymienisz ich rodzaje z wadami i zaletami
46- Programowanie asynchroniczne
47- Big O notation
48- anti-patterns
49- Jeżeli webowka to jakiś framework, prawdopodobnie Django lub Flask - zależnie co używają, do tego często dochodzi Celery - dobrze wiedzieć, że takie coś istnieje i jak mniej więcej działa
50- Pytania o sieci, komendy UNIXowe
51- Ogólna orientacja w obszarze web developmentu (protokół HTTP, web servery, proxy i cache nie są dla Ciebie czarną magią - co sie dzieje jak wpiszesz adres w przegladarke? Dlaczego dostajesz wlasciwa strone? Jakie znasz protokoly sieciowe i co potrafisz o nich powiedziec?)
52- 3 ulubione featury Pythona 3 względem Pythona 2
53- Co zmieniłbyś w Pythonie - podaj przykład nowego PEP'a
54- Co to GIL (Jak rozwiązać problem GIL'a)
55- multiprocessing vs multithreading vs asyncio (co to programowanie asynchroniczne, GIL itp)
56- SOLID
57- Czy w Pythonie można programować funkcyjnie
58- Jak Python zarządza pamięcią?
59- zamień wartości dwóch zmiennych
60- co to jest i do czego służy type?
61- czy parametry do funkcji są w pythonie przekazywanie przez wartość, czy referencję?
62- do czego służą i czym się różnią metody: __init__ vs __new__ __str__ vs __repr__ __add__ vs __radd__
63- czym się różni metoda od funkcji?
64- co to jest self? czy self jest słowem kluczowym?
65- co to jest słowo kluczowe (keyword)?
66- co oznacza instrukcja pass? kiedy można jej użyć?
67- co to są built-iny?
68- jakie znasz sposoby na konkatenację stringów? których warto, a których nie warto używać i dlaczego?
69- jak działa wielokrotne dziedziczenie w pythonie?
70- co to jest mixin i kiedy warto go użyć?
71- duck-typing
72
73
74Jakie projekty robiłes? - tutaj naucz sie o nich dobrze mówic bo czasami kandydaci rzucają czymś bardzo ciekawym, a po kilku pytaniach okazuje się, że cały kod został zrobiony idąc za tutorialem krok po kroku.
75
76
77Przykładowe zadania do napisania na żywo, te które będziesz rozwiazywał w testach online beda trudniejsze
78- FizzBuzz
79- n-th fibonacci number
80- funkcja do sprawdzania kto wygrał w kółko i krzyżyk - zwraca kto wygrał lub 'remis'
81- funkcja, która działa jak .split(), bierze 2 argumenty - string i splitter, następnie gdy masz juz działąjące rozwiązanie zmień ją tak by była generatorem
82- prosty dekorator do cacheowania
83
84Zadania algorytmiczne:
85CODEAlgorithms, FizzBuzz, Fibonacci, Palindrom, isPrime, Histogram, Problem wydawania reszty, Sortowanie, Konwerter liczb rzymskich, Trójkąt Pascala
86
87Oraz napisanie 1-2 prostych testów do sprawdzenia poprawności swoich rozwiązań.
88
89
90
91PYTANIA TYPOWO DJANGO
92- Czy Django to MVC?
93- Podstawy Django
94- Podsawy Django ORM
95- Podstawy Django Rest Framework
96- Czym jest REST, API
97- Jak rozwija się skrót MTV i za co są odpowiedzialne poszczególne części?
98- Różnice plusy/minusy między CBV i FBV.
99- Co to jest middleware? Ile razy jest/może być wywoływany middleware podczas jednej sesji request-response?
100- Jak działają urlsy?
101- Czy znasz jakieś biblioteki do tworzenia API w Django?
102- Znasz jakiś dekorator często używany w Django?
103- Co to są Generic Views i czy którychś się często używa?
104- Czym się różni STATIC_URL od MEDIA_URL, który jest używany do czego?
105- Do czego jest potrzebny i używany SECRET_KEY?
106- Co to są sygnały, jakie rodzaje sygnałów znasz, do czego się ich używa?
107- Co to są migracje, jak się takie generuje, do czego się ich używa?
108- Automatycznie generowany panel administratora - co możesz o nim powiedzieć, jak działa, czy jest obowiązkowy?
109- Porównaj relację 1:1, 1:N i N:M na podstawie modeli django, jak i kiedy dostępne są relacje zwrotne (odwrotne).
110- Co to jest select_related i prefetch_related i czym się różnią?
111- Czy ORM django cachuje zapytania/odpowiedzi?
112- Jak policzyć ilość obiektów? Jak sprawdzić czy jakikolwiek obiekt danego rodzaju istnieje?
113- Czym jest Annotate i jak się tego mechanizmu używa?
114- Czy wiesz coś o specjalnych obiektach Q, F?
115- Jak się testuje Django, czego się używa?
116- Zmiany w ostatniej lub kilku ostatnich wersjach Django.
117- Dziedziczenie modeli w Django
118- Distinct w Django model
119- Django middleware - czym jest, gdzie się używa
120- Django droga requesta
121- Django select related - o co chodzi
122- Jak działają migracje w Django
123- Czy makemigrations potrzebuje połączenia z bazą danych.
124- Czy migrate potrzebuje połączenia z bazą danych
125- Czy możliwym jest zaimplementowanie logownia/autentykacji bez session?
126- Różnica pomiędzy flaskiem a django
127- kiedy ewulowane są QuestySet w django
128- wedlug jakich kryteriow mozna podzielic API aplikacji monolitycznej na mikroserwisy - wady zalety doswiadczenia
129- HTTP ( HTTP perssisten, cookieys itp itd) , HTTPS (SSL)
130- ile poleci zapytań do bazy w trakcie wykonywania funkcji:
131def dashboard(request):
132items = Item.objects.all()
133return render(request, 'index.html')
134
135- jak poradzić sobie z tłumaczeniem aplikacji napisanej w Django?
136- pola jakiego typu użyjesz w modelu do przechowywania stanu konta użytkownika?
137- co to jest manager w Django?
138- czy kiedykolwiek miałeś sytuację, w której ORM cię ograniczał?
139- co jest nie tak z poniższym kodem? Jak byś go poprawił?
140
141items = Item.objects.all()
142for item in items:
143print(item.buyer.last_name)
144
145- czym się różni select_related od prefetch_related?
146- jakich narzędzi/paczek/aplikacji używasz pisząc aplikację w Django?
147- co to jest model abstrakcyjny?
148- co to jest model proxy?
149- co wyróżnia Django na tle innych (pythonowych) webowych frameworków/bibliotek?
150- w jaki sposób (i po co) rozszerzyć bazową klasę User z Django?
151- co to są szablony?
152- opisz co się dzieje z zapytaniem HTTP w kontekście aplikacji napisanej w Django
153- do czego służy django.db.transaction.atomic i jak można tego użyć?
154- co to jest, i jak Django pozwala zapobiec: XSS, clickjacking, SQL injection, CSRF?
155- jak Django zarządza hasłami użytkowników?
156- co to jest AnonymousUser?
157- jak sprawdzisz, czy aktualnie zalogowany użytkownik jest superuserem?
158- jak sprawdzisz czy dany użytkownik ma uprawnienie do wykonania danej akcji?
159- jak w Django można nadać uprawnienia użytkownikowi?
160- jak wyślesz użytkownikowi duży plik, który został wygenerowany na jego żądanie?
161- jak można deployować aplikację napisaną w Django?
162- w jaki sposób działa i na co pozwala panel administratora w Django?
163Do tego: celery i jak się integruje z django - wysyłanie tasków i te sprawy, co to asynchroniczność
164Kompletne podstawy Dockera + Docker-compose
165
166
167Może być sporo pytań o ORM i optymalizacje zapytań. Raczej przez telefon o składnie Cię nie będą pytać (co jest takim standardem przy Pythonie) ale może paść trochę pytań o różnice względem innych języków, może o realizację struktur danych. No i oczywiście standard nt wzorców projektowych, KISS, DRY, jeśli będzie coś z DB to mogą np pytać o poziomy izolacji, ACID itd