Jak menedżer może przejść rozmowę techniczną: 37 najczęściej zadawanych pytań

21 lipca 2023

  • Autor: Yuriy Lipka

  • Złożoność: łatwo

  • Czas: 11 min

Treść

Kiedy menedżer dołącza do firmy IT, rozumie, że będzie musiał pracować z zespołem techników, którzy mówią własnym językiem. Zrozumienie technicznej strony przepływu pracy pomoże menedżerowi prawidłowo zarządzać projektami, zmniejszyć prawdopodobieństwo błędów i rozwiązać wiele trudności w pracy z klientami.

W tym artykule zebraliśmy sekrety i zalecenia prelegentów kursu TechMind – doświadczonych menedżerów i techników. Przeczytaj go, umieść w swoim skarbcu i z łatwością przechodź najtrudniejsze rozmowy kwalifikacyjne.

12 głównych punktów, będących podstawą pytań na rozmowie technicznej

Większość technicznych rozmów kwalifikacyjnych przebiega podobnie. Rekruter może zadawać różne pytania, ale wszystkie odnoszą się do określonych tematów i obszarów. Oto 12 głównych punktów, o które prawdopodobnie zostaniesz zapytany:

  1. Cykl życia produktu
  2. Metodologie
  3. Analiza biznesowa
  4. Dokumentacja techniczna
  5. Zestaw narzędzi projektowych
  6. Architektura
  7. Klient-serwer
  8. REST
  9. Frameworki, biblioteki
  10. Git
  11. Native/Cross-platform
  12. Testowanie

Przejdźmy przez każdy z nich bardziej szczegółowo i przeanalizujmy, jakie pytania można zadać w tych tematach.

Cykl życia produktu

Cykl życia produktu

To nie tyle temat techniczny, co test ogólnej wiedzy menedżera, który aspiruje do pracy w branży IT. Powinieneś być pewien, że jesteś przygotowany na te pytania, ponieważ pomogą one rekruterowi zrozumieć, ile wiesz o programowaniu i czy możesz pracować w zespole z technikami. Oto pytania i odpowiedzi:

Jakie są etapy cyklu życia oprogramowania

Tworzenie wymagań dla oprogramowania na etapach analizy, projektowania, realizacji, testowania, wdrażania, eksploatacji i konserwacji oraz wycofywania z eksploatacji. Pierwszy etap to ten, który odpowiada na pytanie: „Co zamierzamy zrobić?”. Drugi etap odpowiada na pytanie „Jak to zrobimy?”. Kolejnym etapem jest realizacja projektu, a następnie testowanie i wdrożenie. Ostatnim etapem jest wydanie projektu i dalsze wsparcie techniczne.

Jaka jest różnica między zbieraniem wymagań a projektowaniem

Zbieranie wymagań to proces, w którym menedżer dowiaduje się od klienta, jakie procesy biznesowe chce zautomatyzować i co chce uzyskać. Ten etap obejmuje analityków i kierownika projektu. Projektowanie to proces, w którym spotyka się zespół programistów i określa, jak wymagania zostaną zrealizowane.

Czym jest wsparcie techniczne

Wsparcie techniczne nie oznacza odbierania telefonów od klientów twojego klienta. Chodzi o rozwiązywanie problemów w przypadku awarii produktu. Jeśli coś się „zepsuje” i przestanie działać, zespół programistów musi szybko zareagować i upewnić się, że wszystko jest w porządku.

Jak działa wycofanie produktu z eksploatacji

Gdy produkt traci swoją aktualność lub zostaje zastąpiony nowym, bardziej zaawansowanym technicznie rozwiązaniem, jest wycofywany z eksploatacji. Opracowuje się plan, zatwierdza się go, a następnie rozpoczyna się stopniowe wycofywanie produktu z eksploatacji.

Przykład: przedsiębiorstwo posiada wersję desktopową produktu, ale zdecydowało się przejść na nową aplikację, która działa na urządzeniach mobilnych.

Opracowywana jest strategia przejścia, przygotowuje się produkt, stopniowo przenosi się wszystkie dane, szkoli pracowników i wprowadza nowe narzędzia.

Jacy pracownicy są potrzebni na każdym etapie cyklu życia produktu

Analitycy biznesowi są zaangażowani w tworzenie wymagań, a architekci i kierownicy programistów są kluczowymi osobami na etapie projektowania. Programiści i designerzy są potrzebni do realizacji projektu. Inżynierowie QA są zaangażowani w testowanie. Wdrożenie wymaga prawie wszystkich uczestników projektu, a kierownik projektu jest „gwiazdą”. Jeśli zespół przydzieli inżyniera wsparcia, jest on odpowiedzialny za wsparcie techniczne. Jeśli nie, zaangażowani są QA, programiści i kierownik projektu.

Metodologie

Wybór metodologii nie jest częścią rozmowy technicznej, ale istnieją kwestie, które pośrednio wpływają na zespół programistów. Na przykład, jaką formę wynagrodzenia wybrać. Możesz spotkać się z następującymi pytaniami:

Jaka jest różnica między Fix Price a Time & Materials

Fix Price oznacza, że zarządzamy projektem w ramach określonego budżetu. Firma omawia z klientem, co robi i za jakie pieniądze. Time&Materials stosuje się, gdy klient jest niepewny i nie wie, jaki będzie produkt końcowy. Jest gotowy wykupić zespół i zapłacić za wykonaną pracę. Time&Materials jest często używany w zwinnej metodologii Scrum.

Który model jest lepszy

Fix Price działa świetnie w przypadku projektów, które mają ściśle określony budżet i dokładnie wiedzą, co chcą uzyskać. W takim przypadku wszelkie dodatki, zmiany lub propozycje po prostu nie są realizowane. Time&Materials jest odpowiedni dla startupów i projektów, w których trudno jest zrozumieć dokładną liczbę zadań i wygląd produktu końcowego.

Analiza biznesowaAnaliza biznesowa

Kierownik projektu często pełni funkcje analityka biznesowego. Nawet jeśli nie jest to konieczne, rekruterzy chcą wiedzieć, ile wiesz o pracy BA i czy potrafisz wykonywać jego zadania. Czekają na Ciebie następujące pytania:

Jaka jest różnica między analitykiem biznesowym a analitykiem systemowym

Analityk biznesowy to osoba, która rozumie procesy biznesowe firmy, które wymagają automatyzacji. Szczegółowo rozumie ich specyfikę i szuka podejść, które pomogą ulepszyć procesy. Analizuje wymagania, cele i zadania klienta.

Analityk systemowy przekłada informacje z formatu „Co należy zrobić” na format „Jak to zrobić”. Sporządza diagramy, wykresy, współpracuje z zespołem technicznym i zagłębia się w architekturę.

Czym są User Story i Use Cases

User Story to „historia” klienta firmy, który przechodzi drogę z firmą od początku do końca. Na przykład od wejścia do sklepu internetowego do rejestracji, wypełnienia wniosku i zakupu produktu.

Use Cases to szczegółowy przegląd User Story na określonym etapie. Na przykład, klient zostawił wniosek na stronie internetowej. Jest to jeden z etapów User Story. Ale sam case polega na wypełnieniu określonych pól podczas składania zamówienia.

Różnica między wymaganiami funkcjonalnymi i niefunkcjonalnymi

Wymagania funkcjonalne obejmują opis tego, co należy zrobić. Badane są wymagania klienta. Wymagania niefunkcjonalne odnoszą się do części nietechnicznej. Na przykład na jakich urządzeniach aplikacja powinna działać.  

Kurs TechMind

Dokumentacja techniczna

Menedżer musi cały czas pracować z dokumentacją techniczną. Oczywiście podczas rozmowy kwalifikacyjnej pojawią się pytania na ten temat.

Czym jest zadanie techniczne

Jest to najważniejszy dokument, zadanie developerskie, które opisuje, co należy zrobić i jak to zrobić. Zapisane są tam również wymagania funkcjonalne i niefunkcjonalne. Zadanie techniczne to dokument, który określa, jaki powinien być wynik. Wymagania te są zapisywane i stanowią podstawę pracy całego zespołu. ZT chroni zarówno developerów, jak i klienta. Ponieważ wszyscy stosują się do wymagań zadania technicznego.

Use Cases, Test Cases

Use Cases opisują scenariusz interakcji pomiędzy uczestnikami. Mogą być przedstawione w formie diagramów lub tekstu. Są one potrzebne programistom, testerom i całemu zespołowi projektowemu do zrozumienia pełnej specyfikacji wymagań. Test Cases są potrzebne, aby tester przeszedł przez cały produkt i niczego nie przegapił. Powinny być napisane w taki sposób, aby każdy tester z innego projektu mógł je zrozumieć.

Gdzie przechowywać wymagania i zarządzać nimi

Wszystko zależy od relacji z klientem. Confluence nadaje się do tego zadania i wygodniej jest przechowywać je na własnym serwerze niż na serwerze klienta. Menedżer może bowiem zapisywać informacje, których nie chce pokazywać klientowi. Można również użyć Jira lub Notion.

Narzędzia projektowe

Narzędzia Projektowe

Podczas rozmów kwalifikacyjnych rekruterzy chcą wiedzieć, z jakimi narzędziami możesz pracować. Musisz więc być przygotowany na pytania. Lepiej jest przygotować się z wyprzedzeniem, a przynajmniej zapoznać się z narzędziami używanymi przez menedżera. Możesz spodziewać się następujących pytań:

Który Task Tracker lepiej wybrać

Każde narzędzie do śledzenia zadań ma wiele fajnych funkcji, więc należy przyjrzeć się możliwościom narzędzi i wybrać odpowiednie dla konkretnych projektów. Często korzystają z Jira. Nie oznacza to, że jest najlepsza, ale jest wymagana w 33% ofert pracy na stanowisku kierownika projektu.

Do czego służy Project Planning

Przede wszystkim do tworzenia wykresu Gantta. Jest to podstawowe narzędzie dla kierownika projektu, w którym można śledzić etapy projektu, budować go od początku do końca. Narzędzia do planowania projektów są potrzebne do śledzenia efektywności zadań, sprawdzania, ile czasu i budżetu pozostało.

Architektura dla kierownika projektu

Kierownik projektu musi rozumieć, gdzie przechowujemy dane, za pomocą jakich danych je pobieramy, czy architektura będzie typu klient-serwer, czy też inna. Architektura to schematyczne wyjaśnienie, skąd i dokąd przepływają dane, w jaki sposób są przetwarzane i na jakich etapach są dostarczane użytkownikom.

Podczas rozmów kwalifikacyjnych możesz zostać zapytany o architekturę bardziej szczegółowo, ale jest to temat na osobny artykuł. 

Różnica między backendem a frontendem

Na przykład, mamy aplikację mobilną. To, co masz na swoim urządzeniu, to frontend. To z nim użytkownik wchodzi w interakcję i go widzi. Backend to procesy, które nie są widoczne dla użytkownika. Przetwarzanie danych, przechowywanie, przesyłanie, dostęp do serwerów. Ta zasada działa w przypadku każdego produktu. To, co widzi użytkownik, to frontend. Wszystko, co dzieje się za drzwiami, to backend.

Co oznacza „cienki” i „gruby” klient

Nie, nie chodzi o obwód w pasie. Każdy, kto nie ma technicznego wykształcenia i umiejętności, jest zdezorientowany tym pytaniem. Dlatego zalecamy doskonalenie swoich umiejętności na kursie Techmind. Zdobędziesz praktykę i wiedzę, które pomogą Ci przejść rozmowy kwalifikacyjne i uniknąć takich sztuczek rekruterów. A teraz do pytania.

„Grubość” klienta zależy od tego, ile logiki znajduje się na kliencie. Jeśli aplikacja ma minimalną logikę na kliencie, a główną logikę na serwerze, wtedy powstaje „cienki” klient. Jeśli podczas pobierania aplikacji na kliencie przetwarzana jest duża ilość danych, „grubość” klienta wzrasta.

Różnica między nimi polega na opcjach przetwarzania danych. Grubi klienci pracują głównie z informacjami opartymi na własnych możliwościach oprogramowania, podczas gdy ciency klienci używają oprogramowania centralnego serwera do przetwarzania. Wszystkie przeglądarki i aplikacje internetowe, gry online są cienkimi klientami. Natomiast Microsoft Outlook lub Office 365 są grubymi klientami.

Czym jest baza danych

Jest to miejsce, w którym wszystkie dane są przechowywane i przetwarzane. Jest ona prezentowana w formie tabel, które dzielą dane na kolumny i wiersze. Na przykład nazwa użytkownika, numer telefonu, adres e-mail. Wszystkie tabele są ze sobą połączone, więc żądając pewnych danych, można uzyskać także inne informacje.

DNS – co to jest

Podczas rozmów kwalifikacyjnych często przytaczana jest następująca sytuacja: użytkownik wprowadza pewne dane do paska wyszukiwania przeglądarki i klika przycisk „Znajdź”. Jak działa cały proces? Na to pytanie można odpowiedzieć szczegółowo, ale rekruter czeka na wyjaśnienie, czym jest DNS.

Jeśli istnieją fizyczne serwery, na których znajdują się informacje, należy uzyskać do nich dostęp. Każdy serwer ma nazwę, która wygląda jak adres IP. Aby uniknąć zapamiętywania dużej ilości liczb, opracowano system DNS. DNS ma czytelną formę i hierarchiczną strukturę, dzięki której użytkownik składa zapytanie i uzyskuje dostęp do informacji. Kurs Techmind szczegółowo wyjaśnia działanie DNS i baz danych.

Do czego potrzebna jest replikacja

Replikacja służy do tworzenia kopii bazy danych. Sama baza danych jest przechowywana na serwerze, ale co się z nią stanie, jeśli coś stanie się z serwerem? Spłonie, ulegnie uszkodzeniu lub zostanie zhakowany? Baza danych zostanie zagubiona. Lata pracy mogą zostać utracone. Replikacja pomaga tego uniknąć. Kopie baz danych są tworzone i umieszczane na różnych serwerach i nośnikach lokalnych. Baza danych jest regularnie aktualizowana, i z określoną częstotliwością repliki są uzupełniane o aktualne informacje.

Jaka jest różnica między mikroserwisem a monolitem

Monolit to scentralizowane przetwarzanie zapytań, podczas gdy mikroserwisy to indywidualne przetwarzanie zapytań. Aplikacja monolityczna wygląda jak jeden wspólny moduł, w którym odbywa się cała praca. Architektura mikroserwisów ma kilka małych usług, które uruchamiają się.

Nie można z całą pewnością stwierdzić, która z nich jest lepsza, ponieważ każda z nich ma swoje własne cechy. Architektura monolityczna jest uważana za bardziej tradycyjną, niezależną od innych serwisów i posiada jedną bazę kodu. Aby coś zmienić, należy zaktualizować cały stos. Na początkowych etapach projektu jest to wygodne rozwiązanie, ponieważ łatwiej je wdrożyć. Mikroserwis jest łatwiejszy do skalowania, testowanie i aktualizacje są szybsze i tańsze, a aplikacja staje się bardziej elastyczna.

Klient-serwer

Klient-serwer

Zagłębiając się w wiedzę techniczną, kierownik projektu musi zrozumieć, czym jest klient-serwer. Oto najczęściej zadawane pytania na ten temat:

Co to jest klient-serwer

Są to elementy architektury, które oznaczają, że istnieje część kliencka, która wchodzi w interakcję z użytkownikiem, oraz część serwerowa – logika aplikacji. Część kliencka jest odpowiedzialna za pokazywanie użytkownikowi danych, wyświetlanie okien w określonym kolorze i wybieranie przycisku. Część serwerowa odpowiada za zbieranie i przechowywanie danych, przetwarzanie żądań i logikę interakcji użytkownika z produktem.

Do czego służy REST

Jest to zestaw reguł, które pokazują, jak komunikować się między klientem a serwerem. Jest to rodzaj „transportu”, który przesyła dane. Klient żąda pewnych danych od serwera. To żądanie jest wysyłane do serwera, a on je zwraca. REST to zestaw reguł, które pomagają serwerowi i klientowi zrozumieć się nawzajem.

Gdzie umieścić logikę

Nie ma tu uniwersalnej odpowiedzi. Niektórzy uważają, że lepiej jest zbudować całą logikę na backendzie i nie obciążać klienta. Inni twierdzą wręcz przeciwnie. Odpowiedź, która się spodoba: wszystko zależy od tego, co robimy i w jakim środowisku się znajdujemy. Możesz umieścić wszystko na kliencie, ale wszystko związane z bezpieczeństwem powinno być zbudowane na backendzie. Złożone obliczenia związane z płatnościami również lepiej pozostawić w backendzie.

REST

W skrócie powiedzieliśmy już, że REST to pewien styl interakcji między klientem a serwerem. Pomaga nawiązać komunikację między żądaniem a odbiorem danych. W temacie REST mogą pojawić się następujące pytania:

Co to jest json, xml, html

Są to formaty plików wymieniane między klientem a serwerem. Nie przechowują one wszystkich danych oddzielonych przecinkami, muszą być ustrukturyzowane. I to są opcje struktury. Json jest używany do wymiany danych w urządzeniach mobilnych, xml, html działają w Internecie.

Metody update, delete, get, post

Urządzenia mobilne wchodzą w interakcję z backendem za pomocą pewnych żądań. Zazwyczaj są to linki i dodatkowe pola. Przechodzimy do linku i wydajemy jedną z komend: update, delete, get, post.

  • get – zabieramy coś, na przykład „Daj listę kontaktów”
  • post – mówimy, że trzeba coś dodać, na przykład nowego znajomego w sieci społecznościowej
  • delete – za pomocą tego polecenia mówimy, że trzeba usunąć dane, na przykład plik z telefonu
  • update – aktualizacja pliku: zmiana nazwy, dodanie nowych danych.

Te cztery komendy należy znać szczegółowo. Zalecamy zapoznanie się z nimi osobno. Na kursie Techmind analizujemy je bardziej szczegółowo i uczymy, jak pracować z tymi komendami.

Frameworki i biblioteki

Frameworki i biblioteki

Specjaliści nietechniczni są często pytani o ten temat. Dlatego lepiej przygotować się wcześniej i zagłębić się w wiedzę na temat frameworków i bibliotek. Oto główne pytanie, które może zostać zadane:

Jaka jest różnica między frameworkiem a biblioteką

Framework to struktura z kodem, która pozwala na wygodne oprogramowanie czegoś. Biblioteka jest również strukturą z kodem, ale jest pobierana z zewnątrz. Jest traktowana jako gotowe rozwiązanie do programowania. Wydaje się, że jest to wygodniejszy i łatwiejszy sposób na programowanie. Jednak biblioteka jest rozwiązaniem zewnętrznym, które trudno dostosować do własnych potrzeb.

Na przykład, potrzebujesz kalendarza. Możesz wziąć gotowe rozwiązanie z biblioteki i zaimplementować aplikację. Ale jeśli klient poprosi o dodanie kolorów do kalendarza, zmianę czcionki lub zmianę początku tygodnia z niedzieli na poniedziałek, trudno będzie go zedytować. Biblioteka jest odpowiednia dla standardowych i szybkich rozwiązań.

Git

Git to system kontroli wersji. Mamy programistów, którzy stale opracowują ulepszenia i wprowadzają nowe funkcje. Aby uniknąć zamieszania i uzyskać sztywną strukturę, wprowadzono system kontroli wersji. Osobie nietechnicznej mogą zadać następujące pytania na ten temat:

Jak działa Git

Aby nie utracić gotowych wyników, utworzona zostaje główna gałąź – Master. Są to już zatwierdzone działające rozwiązania, które nadają się do wydania. Następnie pojawia się pomysł wdrożenia nowej funkcji. W Masterze ustalany jest „punkt startowy”, funkcja jest tworzona, testowana i weryfikowana. W Git jest to osobna gałąź. Zawiera technologię związaną tylko z tą nową funkcją. Kiedy jest gotowa, przetestowana i zdecydowano się ją wdrożyć, jest ona łączona z gałęzią główną.

Do czego potrzebny jest Git

Aby się nie pogubić. Najtrudniejsza gałąź dotyczy developerów. Tam odbywają się główne procesy, w trakcie pracy pojawia się wiele błędów i trudno jest je śledzić. Ale Git pomaga organizować gałęzie tak, aby było jasne, co już działa, a co należy poprawić.

Co to jest merge, push, pull

Merge to proces scalania kodu z jednej gałęzi do drugiej. Merge oznacza przeniesienie kodu. Po upewnieniu się, że funkcja działa, jest ona dodawana do głównej wersji Git.

Push to proces dodawania pojedynczego fragmentu kodu do gałęzi. Pull to proces odwrotny, gdy trzeba usunąć coś z gałęzi z kodem.

Cross-platform

W nowoczesnym programowaniu coraz rzadziej używa się tylko wersji desktopowych lub mobilnych produktu. Jednak tworzenie produktu dla każdego systemu osobno jest dość kosztowne. W związku z tym często używa się cross-platform. Specjalista nietechniczny powinien rozumieć, czym są te procesy i jak działają.

Czym jest native

Jeśli programowanie odbywa się w języku natywnym dla danej platformy, nazywa się to native. Na przykład, jeśli produkt jest opracowywany dla systemu operacyjnego iOs, używany jest język Swift.

Czym jest cross-platform

Jest to proces, w którym aplikacja jest tworzona z bazą kodu działającą na różnych systemach operacyjnych. Oznacza to, że aplikacja będzie działać zarówno na iPhonach, jak i na Androidzie. Pomimo faktu, że wydaje się to bardziej opłacalne, rozwiązania cross-platformowe mają wiele wad i nie zawsze działają dobrze. Stos technologiczny jest określany dla każdego projektu, a podczas opracowywania architektury decyduje się o użyciu native lub cross-platform.

Co jest tańsze

W przypadku szybkiego uruchomienia startupu z pewną funkcjonalnością taniej jest opracować rozwiązanie cross-platformowe. Jeśli potrzebujesz dobrej funkcjonalności, bardziej opłaca się stworzyć ją na platformie native. Ponieważ na cross-platformie będziesz musiał „połączyć” wiele rozwiązań, które zajmą więcej czasu i wysiłku. Z punktu widzenia ogólnej oceny, cross-platform jest tańszym rozwiązaniem. Ale nie zawsze jest odpowiednia dla projektów.

Testowanie

Testowanie

Jakie są typy testowania

Testowanie funkcjonalne – bierzemy i testujemy określoną funkcjonalność. Smoke testing jest używany, gdy znaleziono małego buga, który wpływa na funkcjonalność. Testowanie regresyjne to kompletny proces sprawdzania bugów w całym kodzie, zwykle stosowany przed wydaniem produktu.

Testowanie obciążenia jest stosowane w przypadku złożonych produktów z niefunkcjonalnymi wymaganiami związanymi z obciążeniem. Na przykład aplikacja musi działać przy jednoczesnym obciążeniu 20 000 użytkowników.

Testowanie integracyjne jest stosowane, gdy serwer został już napisany, a klient wciąż się zmienia. Autotesty działają w następujący sposób: pewne działania lub żądania są kodowane, a odpowiedzi są sprawdzane. Jest często używany podczas testowania integracyjnego.

Czym są priorytety

Każdy bug ma przypisany status, który określa ważność testowania i naprawiania. Z reguły używane są statusy Critical, High, Medium, Low i Blocker. Przy statusie Critical produkt nie może działać, dopóki nie zostanie naprawiony, ale funkcjonalność może być testowana. Blocker to status, który uniemożliwia dalsze testowanie do czasu jego usunięcia.

Podsumowanie

To nie wszystkie pytania, które mogą zostać zadane menedżerowi podczas rozmowy technicznej. Aby dostać pracę w firmie IT, trzeba rozumieć procesy pracy, terminologię i język pracowników technicznych. Aby nauczyć się tego wszystkiego, nie wystarczy jeden bardzo przydatny artykuł. Właśnie dlatego stworzyliśmy kurs TechMind dla nietechnicznych specjalistów pracujących w IT. W ciągu kilku miesięcy nauczysz się, jak zarządzać zespołem programistów, odpowiednio ustalać zadania, zarządzać projektami, dobierać najlepsze rozwiązania i unikać błędów. Zapoznaj się z programem kursu i zrozum, że został on zaprojektowany tak, aby w pełni opanować procesy techniczne.

Zapisz się na kurs TechMind, udoskonal swoje umiejętności i z łatwością przechodź rozmowy techniczne. A jeśli powiesz menedżerowi, że czytałeś artykuł o 37 pytaniach na rozmowie kwalifikacyjnej, otrzymasz dodatkową indywidualną zniżkę.

Yuriy Lipka

Yuriy Lipka - Senior Content Managerem w IAMPM. Tworzę przyjazne teksty dla biznesu, przystępnie piszę o złożonych zagadnieniach. Tworzę artykuły z pomysłem i celem, które trafiają do serca i mózgu czytelnika. Jego zadaniem jest przekazanie znaczenia za pomocą liter w profesjonalny i zrozumiały sposób.