Informacje o mnie

Programistka z tytułem magistra w dziedzinie Informatyki stosowanej. Przyzwyczajona do pracy z zespołami w metodologi Scrum wtrakcie kilku komercyjnych i niekomercyjnych projektów. Rozwinełam dobre umiejętności zarządzania czasem, jednocześnie uczęszczając na zajęcia w szkole zwykłej i muzycznej. Moje doświadczenie w prowadzeniu chóru i jako starosta roku pozwoliło mi opanować umiejętności komunikacyjne.

Doświadczenie

Dotychczas miałam okazję pracować w Nokii. Zajmowałam się tam na stażu stroną internetową. Następnie dołączyłam do zespołu, gdzie zajmowałam się rozwojem wewnętrzną strony internetowej, a część czasu poświęcałam programowani stacji bazowych. Następnie pracowałam przy pomocy skryptów pythonowych przy webscrapingu i przetwarzaniu danych, z drobniejszymi zadaniami dotyczącymi technologii webowych.

Jeżeli chodzi o doświadczenia niezwiązane z informatykom, miałam okazje uczestniczyć jako wolontariusz w eventach takich jak np. Noc Muzeów. Organizowałam i obsługiwałam festyny łucznicze i zawody klubowe. Miałam również okazję pracować w sklepie odzieżowym. Wszystkie te doświadczenia nauczyły mnie współpracy z ludźmi, planowania oraz bieżącego rozwiązywania problemów.

Python Developer (Working Student)

Firma: Nokia Solutions and Networks

Opis: Podczas pracy zajmowałam się programowaniem skryptów w Pythonie z wykorzystaniem bibliotek Pandas oraz baz danych MySQL, a także integracją z Excelem. Tworzyłam projekty webowe w technologiach React i Bootstrap oraz realizowałam web scraping przy użyciu Selenium i Pythona. Dzięki temu zdobyłam doświadczenie w automatyzacji procesów, przetwarzaniu danych i rozwoju aplikacji internetowych.

Software Engineer (Working Student)

Firma: Nokia Solutions and Networks

Opis: Podczas pracy zajmowałam się programowaniem stacji bazowych w C++ z wykorzystaniem Google Test. Równolegle rozwijałam projekt webowy w technologiach takich jak React, Meteor, JavaScript, TypeScript, CSS, Bootstrap, MongoDB oraz testowałam je przy użyciu Mocha. Realizowałam także integracje z zewnętrznymi usługami, m.in. Jira, a całość prac odbywała się w metodyce Scrum z wykorzystaniem repozytorium GitLab.

Stażysta IT

Firma: Nokia Solutions and Networks

Opis: Podczas stażu zajmowałam się web developmentem z wykorzystaniem technologii takich jak jQuery, JavaScript, SASS, Bootstrap, HTML oraz testów jednostkowych w Jest. Dodatkowo pracowałam z REST API, integrując aplikacje z zewnętrznymi źródłami danych. Dzięki temu zdobyłam doświadczenie w tworzeniu i testowaniu nowoczesnych interfejsów użytkownika oraz w budowaniu responsywnych aplikacji internetowych.

Umiejętności techniczne

Web:
JavaScript TypeScript Python HTML SASS CSS React Meteor Bootstrap
Design & DB:
Adobe XD Figma MongoDB MySQL
Testy & API:
Google Test Jest Mocha REST API
Narzędzia:
Git GitLab GitHub Scrum Jira Linux terminal MS Excel Word

Projekty

Oto kilka projektów, nad którymi pracowałem/am. Każdy z nich pokazuje moje umiejętności w tworzeniu nowoczesnych aplikacji i rozwiązań IT.

System wspomagania treningu łuczniczego

Projekt polegał na analizie istniejących systemów wspomagania treningu łuczniczego i opracowaniu własnej metody oceny strzału na podstawie danych z sensorów ruchu. Nowa metoda pozwalała nie tylko określić fazę, w której wystąpił błąd, ale także oś zakłócenia oraz umożliwiała dostosowanie wag poszczególnych kryteriów w końcowej ocenie. Eksperymenty wykazały, że dodatkowy czujnik na ręce naciągającej dostarcza cennych informacji, a ruchy obu rąk w fazie celowania są silnie skorelowane. Opracowane rozwiązanie umożliwia lepszą analizę błędów i personalizację oceny strzału.

Wizualizacja Systemu Wspomagania Treningu Łuczniczego

Aplikacja do planowania ślubów i wesel

Aplikacja mobilna na platformę Android, napisana w języku Kotlin. Projekt był realizowany zespołowo, równolegle w technologiach webowych, na Androida oraz iPhone'y. Po analizie dostępnych na rynku rozwiązań wybrano najczęściej wykorzystywane funkcje, takie jak odliczanie dni do ślubu czy obsługa odpowiedzi zaproszonych gości (RSVP). Dodano także moduł listy zadań do wykonania przed uroczystością. W planach rozwoju przewidziano rozszerzenie aplikacji o moduły do planowania usadzenia gości oraz inne funkcje wspierające organizację wesela.

Wizualizacja aplikacji do planowania wesel

Realizacja strony

Dobór technologii

Podczas wyboru technologii wzięłam pod uwagę poziom skomplikowania strony, responsywność, dalsze perspektywy rozwoju oraz czas konieczny do jej wykonania. Strona w samej koncepcji jest dość prosta, służy jedynie do prezentowania treści, więc nie wymaga bardzo zaawansowanych mechanizmów. Jako zadanie rekrutacyjne oraz po prostu autoprezentacja szanse na konieczność dalszego rozwoju tej strony i rozbudowy o kolejne bardziej skomplikowane moduły są nikłe. Dla strony bardzo ważna jest responsywność i w miarę krótki czas implementacji ze względu na ograniczenia czasowe. Na tej podstawie ustaliłam, że najlepszym rozwiązaniem, będzie wykonanie tej strony przy pomocy HTML’a, CSS’a i JS’a. Pozwoli to możliwie mocno ograniczyć zbędny kod, który przy tak prostym projekcie byłby po prostu nadmiarowy.

Dokumentacja pracy z AI

1. Utworzenie szkieletu strony

Mój prompt: Chce stworzyć strone z poniższą zawartością. Zawartość strony: O mnie i moim doświadczeniu Twoje, umiejętności techniczne, Projekty, Dokumentacja pracy z AI, sekcja Q&A: Odpowiedzi na pytania techniczne. Ważna jest responsywność i prezentacja strony. Wygeneruj mi szablon w HTML/CSS/JS.

Odpowiedź AI: Wygenerowano strukturę HTML z podanymi sekcjami. Style stanowiły część pliku otrzymanego pliku HTML. Oprócz kodu zwrócona została rózniwż poniższa wiadomość: Gotowe! Wrzuciłem Ci do canvasu kompletny, responsywny szablon w czystym HTML/CSS/JS z sekcjami: O mnie / Doświadczenie (z osią czasu) Umiejętności (tagi technologii) Projekty (karty) AI Worklog (szablon wpisów, przyciski: dodaj/rozwiń/zwiń, data automatycznie) Q&A (akordeony + filtr wyszukiwania) Motyw jasny/ciemny, sticky nawigacja, druk do PDF

Moje poprawki/prośby: W kolejnych krokach prosiłam ChatGPT o zmiany w zaproponowanym kodzie. Ze względu na liczbę poprawek, zdecydowałam się przedstawić przykładowe tylko prośby o poprawki:
  • Usuń możliwość dodawania wpisów z dokumentacji pracy z AI.

    Odpowiedź AI:Usunąłem możliwość dodawania wpisów w sekcji dokumentacji pracy z AI – teraz są tam tylko statyczne logi.

  • W ciemnym motywie pasek nav też powinien być ciemny

    Odpowiedź AI:Usunąłem możliwość dodawania wpisów w sekcji dokumentacji pracy z AI – teraz są tam tylko statyczne logi.

  • Dodaj ciemny motyw

    Odpowiedź AI:Dodałem przełącznik trybu jasny/ciemny 🌙☀️ – domyślnie strona startuje w ciemnym motywie, a kliknięciem można zmienić styl.

  • Przedstaw projekty w postaci karuzeli

    Odpowiedź AI:Dodałem prostą karuzelę projektów z przyciskami ◀ ▶. Dzięki temu każdy projekt wyświetla się w formie slajdu, a użytkownik może je przewijać.

  • Slajdy projektów mają być bardziej kwadratowe

    Odpowiedź AI:Zmodyfikowałem styl karuzeli, żeby slajdy projektów były bardziej kwadratowe — karty mają teraz ustaloną wysokość i proporcje zbliżone do kwadratu.

  • Sekcja Q&A powinna mieć tematyczne podsekcje np. frontend, backend w których są pytania do konkretnych dziedzin

    Odpowiedź AI:Dodajmy w sekcji Q&A podział na tematyczne podsekcje (np. Frontend, Backend) i w każdej z nich pytania oraz odpowiedzi. To ułatwi nawigację i segregację treści.

  • Dodaj sekcje o doświadczeniu osobno

    Odpowiedź AI:Sekcja o doświadczeniu została dodana osobno między „O mnie” a „Umiejętności”.

Podsumowanie: AI przyspieszyło start projektu, pozwalając szybko wygenerować bazową strukturę i podział na sekcje. Pozwoliło również na szybkie przetestowanie różnych możliwości układu.
2. Ustawienie ramowych sekcji i stylów

W kolejnych krokach korzystałam z wygenerowanego szablonu wprowadzając kolejne zmiany. Skupiłam się w tym kroku na ustaleniu ogólnego wyglądu i konkretnym już wydzieleniu sekcji. Pracując z AI, testowałam różne zaproponowane szaty graficzne dla strony. Poniżej przedstawiono kilka przykładowych promptów:

  • Dodaj sekcje o doświadczeniu osobno

    Odpowiedź AI:Sekcja o doświadczeniu została dodana osobno między „O mnie” a „Umiejętności”.

  • Zaproponuj inną kolorystykę strony

    Odpowiedź AI:Możemy nadać stronie bardziej nowoczesny i czytelny wygląd, zachowując ciemny motyw, ale z akcentami kolorystycznymi.Oto przykładowa propozycja kolorystyki:🎨 Propozycja nowej kolorystyki Tło strony: #0d1117 (ciemny grafit, elegancki) Tło sekcji/nawigacji: #161b22 (nieco jaśniejsze od tła, dla kontrastu) Nagłówki: #58a6ff (niebieski akcent, czytelny na ciemnym tle) Tekst główny: #c9d1d9 (jasnoszary, dobrze czytelny) Tagi/akcenty: #238636 (zielony GitHub-like dla wyróżnień) Przyciski/linki hover: #f78166 (pomarańczowy akcent dla interakcji) Karuzela projektów: tło kart #21262d, obramowanie #30363d, hover z lekkim rozjaśnieniem. Mogę od razu zmienić w Twoim kodzie CSS wszystkie style na tę paletę, żebyś zobaczył efekt.

  • Zapoponuj inną szatę graficzną. Powinna być jaśniejsza, ale wciąż wyglądać profesjonalnie.

    Odpowiedź AI:Możesz przejść na jasny, elegancki styl, który zachowuje profesjonalny wygląd, ale jest bardziej przejrzysty i mniej „ciężki” niż obecny ciemny motyw. Propozycja szaty graficznej: Tło: jasnoszare (#f8f9fa) lub białe (#ffffff) Tekst główny: ciemnoszary (#212529) dla lepszej czytelności Nagłówki: granat (#0d6efd) lub ciemny niebieski (#003366) Akcenty: pomarańcz (#fd7e14) lub zielony (#198754), używany w hoverach i tagach Karty / karuzela: delikatny cień i biały box (#ffffff z border-radius: 10px, box-shadow: rgba(0,0,0,0.1) 0px 4px 12px) Tagi umiejętności: pastelowe odcienie z kontrastowym tekstem (np. #e3f2fd z niebieskim tekstem) Nawigacja: lekki pasek nawigacyjny w bieli z cienką dolną linią (#dee2e6), hover w kolorze akcentowym.

Podsumowanie: AI przyspieszyło start projektu, pozwalając szybko wygenerować bazową strukturę i podział na sekcje. Pozwoliło również na szybkie przetestowanie różnych możliwości układu.
3. Redakcja tekstów i sekcji Q&A

W tym kroku skupiłam się na redakcji tekstów oraz organizacji sekcji Q&A. Wspólnie z AI przeszliśmy przez istniejące pytania i odpowiedzi, wprowadzając poprawki stylistyczne oraz merytoryczne. Dodatkowo poprosiłam go o podanie definicji/odpowiedzi na dane pytanie i porównywałam zrozumiałość odpowiedzi. Następnie prosiłam go by je połączył i poprawił by uzyskać spójność wypowiedzi.

Przykładowo mój prompt: Potrzebuje odpowiedzi na techniczne pytania, razem z objaśnieniem, przykładem i źródłem. Pytanie: Opisz różnicę między position: relative, absolute i fixed w CSS

Odpowiedź AI: Wygenerowano strukturę HTML z podanymi sekcjami. Style stanowiły część pliku otrzymanego pliku HTML. Oprócz kodu zwrócona została rózniwż poniższa wiadomość: 1. position: relative Opis: Element pozostaje w normalnym układzie strony, ale można go przesunąć względem swojego pierwotnego położenia za pomocą właściwości takich jak top, left, right, bottom. Zajmowane przez niego miejsce w dokumencie pozostaje takie samo (nie „wychodzi” z flow). Przykład: [tu był podany jednolinijkowy przykład] 👉 Ten element przesunie się 20px w dół i 30px w prawo, ale w układzie strony miejsce „po staremu” nadal będzie zajęte. [To samo dla pozostałych dwuch pozycji] 🔹 Podsumowanie w tabeli 📚 Źródła: MDN – position, CSS Tricks – A Complete Guide to Positioning.

Mój prompt: Opisz różnice pomiędzy tymi trzema typami w trzech zdaniach.

Odpowiedź AI: relative przesuwa element względem jego pierwotnego położenia, ale wciąż pozostaje on częścią normalnego układu strony. absolute usuwa element z układu i pozycjonuje go względem najbliższego przodka z ustawionym position innym niż static. fixed również usuwa element z układu, ale zawsze przykleja go do okna przeglądarki, niezależnie od przewijania.

Mój prompt: Napisz to pełnymi zdaniami

Odpowiedź AI: Oczywiście 🙂 Element z ustawionym position: relative pozostaje w normalnym układzie strony, ale można go przesunąć względem jego pierwotnej pozycji. Element z ustawionym position: absolute jest usuwany z normalnego układu i pozycjonowany względem najbliższego przodka, który ma ustawione position inne niż static. Element z ustawionym position: fixed jest również usuwany z układu, ale zawsze pozostaje przyklejony do okna przeglądarki, niezależnie od przewijania strony.

Mój prompt: Wygeneruj krótką jednozdaniową definicję porównawczą jako podsumowanie

Odpowiedź AI: W skrócie: relative przesuwa element względem jego własnej pozycji, absolute pozycjonuje go względem najbliższego pozycjonowanego przodka, a fixed przykleja go na stałe do okna przeglądarki.

4. Praca z kodem

Pracując już z wypełnionym szablonem używałam GitHub Copilot'a do generowania fragmentów kodu, wyszukiwania miejsc do poprawy oraz wprowadzania poprawek. Przykłądem tutaj mogą być tagi używane przy umiejętnościach. Za pomocą Copilot'a łatwo wprowadzić zmiany takie jak np dodanie odstępów między tagami, czy zmiana nazw grup umiejętności. Dzięki temu, że Copilot widzi wybrany kontekst, mógł wprowadzić zmiany wynikające z pliku HTML do pliku ze stylami. Było to bardzo poręczne, ponieważ nie wymagało ręcznego przenoszenia zmian styli do pliku CSS.

5. Podsumowanie pracy z AI

Użycie AI przy tworzeniu tej strony znacząco przyspieszyło proces projektowania i implementacji. Pozwoliło na szybkie wygenerowanie bazowej struktury i podziału na sekcje, co stanowi solidny fundament dla dalszej pracy. W zależności od etapu pracy inne narzędzia okazały się najbardziej przydatne. W moim przypadku użyty został ChatGPT oraz GitHub Copilot. ChatGPT sprawdził się doskonale przy generowaniu treści, redakcji tekstów oraz przy wprowadzaniu większych zmian w strukturze i stylach strony. Jego zdolność do rozumienia kontekstu i dostarczania szczegółowych odpowiedzi była nieoceniona, zwłaszcza przy tworzeniu sekcji Q&A, gdzie precyzyjne i zrozumiałe odpowiedzi na techniczne pytania były kluczowe. Przy późniejszych etapach, gdy struktura była już ustalona, GitHub Copilot okazał się niezwykle pomocny przy generowaniu fragmentów kodu, wyszukiwaniu miejsc do poprawy oraz wprowadzaniu drobnych poprawek. Jego integracja z edytorem kodu pozwalała na szybkie i efektywne modyfikacje, co znacznie usprawniło proces kodowania.

Q&A

Frontend & Podstawy

Opisz różnicę między position: relative, absolute i fixed w CSS

Ustawienie właściwości position w CSS określa sposób pozycjonowania elementu na stronie. W przypadku wartości relative element pozostaje w normalnym układzie dokumentu, ale można go przesunąć względem jego pierwotnej pozycji za pomocą właściwości top, right, bottom lub left. absolute usuwa element z normalnego układu i pozycjonuje go względem najbliższego przodka, który ma ustawioną właściwość position inną niż static. fixed również usuwa element z układu, ale jego pozycja jest ustalana względem okna przeglądarki i pozostaje niezmienna podczas przewijania strony.

Co to jest Event Bubbling w JavaScript?

Event Bubbling w JavaScript to mechanizm, w którym zdarzenie wywołane na elemencie potomnym propaguje się w górę drzewa DOM do jego rodziców, umożliwiając obsługę zdarzeń zarówno na elemencie, jak i na jego przodkach.

Jak wyśrodkować element w CSS? Podaj 2–3 różne metody

Element w CSS można wyśrodkować na kilka sposobów, w zależności od typu elementu i kierunku wyśrodkowania. Poziome wyśrodkowanie elementu blokowego o określonej szerokości można uzyskać za pomocą margin: auto. W przypadku Flexbox’a i Grid’a elementy można wyśrodkować zarówno poziomo, jak i pionowo, używając odpowiednio właściwości justify-content i align-items dla flexbox lub place-items: center dla grid.

API & Integracje

Czym różni się metoda GET od POST?

Metoda GET służy do pobierania danych z API i przekazuje parametry zazwyczaj w adresie URL. Metoda POST służy do tworzenia nowych wpisów lub przesyłania danych do serwera, przy czym parametry wysyłane są w treści żądania (body), co pozwala przesyłać większe ilości danych i ukrywać je przed użytkownikiem.
Przykład: metoda GET może służyć do pobrania listy użytkowników z API, a POST do dodania nowego użytkownika do bazy danych.

Co to jest JSON i dlaczego jest popularny w API?

JSON (JavaScript Object Notation) to lekki format wymiany danych, który jest czytelny dla człowieka i łatwy do przetworzenia przez maszynę. Jest szeroko wykorzystywany w API, ponieważ umożliwia szybkie i efektywne przesyłanie danych między serwerem a klientem, a jego struktura obiektów i tablic jest intuicyjna i uniwersalnie wspierana w większości języków programowania.

Opisz, jak byś debugował sytuację, gdy fetch() do API zwraca błąd 403

Błąd 403 (Forbidden) oznacza brak uprawnień do uzyskania żądanych danych. Debugowanie należy rozpocząć od sprawdzenia, czy żądanie wysyłane jest z odpowiednią autoryzacją (token, nagłówek Authorization). Następnie należy upewnić się, że token lub klucz API jest aktualny i ma wystarczające prawa dostępu. Warto sprawdzić metodę HTTP, adres URL oraz szczegóły w zakładce Network w przeglądarce. W razie potrzeby można przetestować żądanie w Postmanie lub curl.

Automatyzacje & Narzędzia

Czy korzystałeś z Make, n8n lub Zapier? Jeśli tak – opisz przykład

Nie miałam jeszcze okazji bezpośrednio korzystać z narzędzi takich jak Make, n8n czy Zapier, jednak dostrzegam w nich duży potencjał w automatyzowaniu procesów i ułatwieniu codziennej pracy.

Jeśli nie – wyjaśnij swoimi słowami, do czego mogą służyć takie narzędzia

Make, n8n czy Zapier służą do automatyzowania różnych zadań między aplikacjami i usługami online. Umożliwiają tworzenie przepływów pracy, gdzie zdarzenia w jednej aplikacji automatycznie wywołują działania w innych, np. zapisanie danych w bazie po otrzymaniu e-maila. Dzięki temu można zaoszczędzić czas, ograniczyć ręczne wykonywanie powtarzalnych czynności i łatwo integrować różne systemy bez konieczności pisania własnego kodu.

Jak rozumiesz pojęcie "webhook"?

Webhook to mechanizm umożliwiający jednej aplikacji wysyłanie powiadomień lub danych do innej aplikacji w momencie, gdy zajdzie określone zdarzenie. Działa on w formie specjalnego adresu URL, na który wysyłane jest żądanie HTTP (najczęściej POST) z informacjami o zdarzeniu, np. nowym zamówieniu, zaktualizowanym rekordzie lub wiadomości e-mail. Dzięki webhookom możliwe jest natychmiastowe reagowanie na zdarzenia w systemach zewnętrznych, co ułatwia automatyzację procesów i integrację różnych aplikacji.

Wyobraź sobie, że klient chce automatycznie otrzymywać raport w PDF po każdym wydarzeniu. Jakich narzędzi użyjesz?

Do tego celu dobrze sprawdzą się narzędzia do automatyzacji takie jak Make, n8n czy Zapier. Pozwolą one pobrać dane, wygenerować PDF i wysłać go e-mailem w reakcji na zdarzenie.

AI & Agenty

Czym różni się "prompt" od "system prompt"?

"Prompt" to dowolne wejście tekstowe. "System prompt" ustawia kontekst, ton lub rolę, jaką model ma przyjąć podczas całej sesji. Określa sposób interpretacji wszystkich kolejnych promptów.

Co to jest API Key i dlaczego należy je chronić?

API Key to unikalny ciąg znaków, który służy do identyfikacji i uwierzytelniania użytkownika lub aplikacji podczas korzystania z API. Należy go chronić, ponieważ każdy, kto posiada taki klucz, może uzyskać dostęp do zasobów API i wykonywać operacje w imieniu właściciela klucza, co może prowadzić do nieautoryzowanego użycia lub wycieków danych.

Opisz sytuację, w której AI może pomóc w supporcie technicznym

AI może znacząco wspierać dział wsparcia technicznego, na przykład poprzez automatyczne odpowiadanie na często zadawane pytania klientów w formie czatu lub e-maila. Może analizować zgłoszenia, klasyfikować je według rodzaju problemu i sugerować odpowiednie rozwiązania, co pozwala pracownikom skupić się na bardziej skomplikowanych przypadkach. Dodatkowo AI może monitorować systemy w czasie rzeczywistym, wykrywać potencjalne błędy i generować wstępne raporty dla zespołu technicznego, przyspieszając proces diagnozy i naprawy problemów.

Co rozumiesz przez pojęcie "agent AI" albo MCP?

Agent AI to system oparty na sztucznej inteligencji. Może on podejmować autonomiczne decyzje i wykonywać określone zadania. Robi to na podstawie dostępnych danych (bazy wiedzy) i kontekstu.

MCP (Model Context Protocol) służy do zarządzania kontekstem podczas interakcji z AI. Pozwala na zachowanie informacji z poprzednich kroków i uwzględnienie jej w dalszych odpowiedziach.

Problem Solving

Klient pisze: "Wkleiłem wasz kod na stronę i wszystko się rozjechało". Jakie pierwsze kroki byś podjął?

Poprosiłabym klienta o przesłanie pliku z wklejonym kodem i sprawdziła, czy został on poprawnie wklejony w strukturze strony. Następnie zweryfikowałabym, czy kod nie koliduje z istniejącymi stylami CSS lub skryptami JavaScript. W kolejnym kroku przetestowałabym kod w środowisku deweloperskim, aby zidentyfikować przyczynę „rozjechania” elementów i przygotować instrukcje lub poprawki umożliwiające prawidłowe wyświetlanie strony.

Miał(a)byś połączyć formularz kontaktowy z Google Sheets. Jak byś to zrobił(a)?

Sposób połączenia formularza kontaktowego z Google Sheets zależy od tego, jak został zbudowany formularz. Zakładając, że jest to formularz Google, najpierw sprawdziłabym w dokumentacji, czy można zmienić lokalizację końcowych wyników – formularze Google automatycznie zapisują odpowiedzi w arkuszu Google, więc nie powinno to przysporzyć problemów. W przypadku formularzy zewnętrznych można użyć Google Apps Script do napisania skryptu, który odbierze dane i zapisze je w odpowiednich komórkach arkusza, lub skorzystać z narzędzi do automatyzacji, takich jak Zapier, Make czy n8n, które pozwalają łatwo przesyłać nowe zgłoszenia do arkusza bez konieczności pisania własnego kodu.

Klient zgłasza, że iFrame jest zbyt szeroki. Jak sprawdzisz i poprawisz problem?

Pierwszym krokiem byłoby poproszenie klienta o przesłanie linku do strony lub fragmentu kodu z iFrame, aby móc sprawdzić jego aktualne ustawienia. Następnie zweryfikowałabym w narzędziach deweloperskich przeglądarki szerokość iFrame oraz stylów CSS, które mogą wpływać na jego rozmiar i układ strony. Aby poprawić problem, można ustawić w kodzie iFrame atrybuty width i height w procentach lub użyć CSS z właściwościami max-width: 100% i height: auto, co pozwoli dostosować iFrame do szerokości kontenera i zapewni responsywne wyświetlanie na różnych urządzeniach.

Jak sprawdzić dokumentację i przygotować integrację API Hugging Face do analizy tekstu?

Pierwszym krokiem byłoby dokładne przejrzenie dokumentacji API Hugging Face, aby zrozumieć dostępne endpointy, wymagane parametry, metody uwierzytelniania oraz formaty danych wejściowych i wyjściowych. Następnie przygotowałabym środowisko testowe, w którym mogłabym wysyłać przykładowe żądania do API i analizować otrzymywane odpowiedzi, aby upewnić się, że integracja działa poprawnie. Kolejnym krokiem byłoby napisanie kodu w naszym systemie, który wysyła dane tekstowe do API, odbiera wynik analizy i zapisuje go w odpowiedniej strukturze w systemie, a na końcu przetestowanie całego procesu pod kątem różnych scenariuszy, aby zapewnić stabilność i poprawność integracji.

Na supporcie klient pyta o funkcję, której nie znasz. Co robisz?

W sytuacji, gdy klient pyta o funkcję, której nie znam, najpierw przyznaję otwarcie, że nie posiadam od razu pełnej wiedzy na ten temat, aby zachować przejrzystość i profesjonalizm. Następnie zbieram jak najwięcej informacji od klienta, np. w jakim kontekście funkcja jest używana, i sprawdzam dokumentację lub zasoby wewnętrzne firmy, aby uzyskać dokładną odpowiedź. Po zweryfikowaniu informacji udzielam klientowi precyzyjnej odpowiedzi lub kroków, które pozwolą rozwiązać jego problem, a w razie potrzeby przekazuję sprawę do bardziej doświadczonego członka zespołu.

Rozwój & Nauka

Jakiego aspektu z ogłoszenia o pracę musisz się najbardziej douczyć?

Najbardziej chciałabym się douczyć zwiększenia automatyzacji zadań przy pomocy AI. Miałam już okazję wykorzystywać AI, ale uważam, że bardzo pożyteczne byłoby dla mnie opanowanie automatyzacji procesów przy jej pomocy.

Jakie źródła wykorzystujesz do nauki programowania/technologii?

Do nauki programowania/ technologii korzystam z różnych źródeł w zależności od potrzeby. Do najczęściej wykorzystywanych należy dokumentacja danej technologii oraz artykuły, jeżeli potrzebna jest wiedza z konkretnego zagadnienia. Przydatną metodą jest również proszenie narzędzi AI o poprawki w kodzie oraz ich wyjaśnienie. Sprawdza się to szczególnie na początkowym etapie nauki, gdyż takie zagadnienia są szeroko opisane w źródłach, co zmniejsza szanse halucynacji. Warto analizować takie odpowiedzi i ich źródła, by poznawać inne sposoby rozwiązywania jakiegoś problemu w danej technologii.

Organizacja pracy

Jak planujesz swój dzień pracy, aby ogarnąć kilka różnych zadań?

Planując swój dzień najpierw rozpisuje wszystkie zadania do wykonania i określam ich priorytet. Zazwyczaj ustawiam zadania z największym priorytetem na początek. Jako, że jest to praca zespołowa to przy zadaniach o podobnym priorytecie zwracam uwagę na to co może być blockerem dla innych członków zespołu. W przypadku czasowego przyblokowania w jakimś zadaniu, czasem realizuje krótsze zadania, by przyspieszyć później pracę.

Co najbardziej motywuje Cię do nauki nowych technologii?

Do nauki nowych technologii najbardziej motywuje mnie możliwość ich późniejszego wykorzystania. Mam dużo większą satysfakcję z nauczenia się technologii która jest mi przydatna, niż uczenia dla samego uczenia.

Jakie umiejętności chciał(a)byś rozwinąć w najbliższych 6 miesiącach?

Ciekawi mnie organizacja eventów i narzędzia jakie się do nich wykorzystuje. Jednocześnie chciałabym rozwijać swoje umiejętności techniczne, zarówno w kontekście technologii webowych, mobilnych, jak i AI.