inhire.ioBlogPraca w ITMały software house w dużej firmie – poznajcie Exatel

Mały software house w dużej firmie – poznajcie Exatel

Praca w IT
21/10/2019

O tym, jak się pracuje w Dziale Rozwoju Oprogramowania, czyli małym software housie w dużej firmie rozmawiamy z programistami w projekcie SDNbox – Tomaszem Krakowiakiem oraz Szymonem Nogieciem.

EXATEL to operator telekomunikacyjny, który posiada 3-cią co do wielkości sieć światłowodową w Polsce. Organizacja, która od ponad 20 lat świadczy usługi z zakresu ICT na rzecz operatorów, sektora publicznego i biznesu – w kraju, jak i za granicą. Ale EXATEL to nie tylko ponad 20 500 km sieci. To połączenie telekomunikacji z innowacją. EXATEL praktycznie od zera zbudował własny zespół R&D, składający się z doświadczonych inżynierów. Osób, które swoją kreatywność przekładają na gotowe rozwiązania. Takie, z których będą korzystali wszyscy klienci EXATEL.

Powiedzcie proszę o EXATEL. Kim jesteście, czym się zajmujecie?

Tomasz Krakowiak: Jesteśmy w pełni polskim operatorem telekomunikacyjnym z ambicjami. Mamy młode zespoły R&D pracujące nad ciekawymi projektami realizowanymi praktycznie od zera. Obecnie dostarczamy głównie sieci dla biznesu, będziemy dostarczać również oprogramowanie, w tym SDN.

Dlaczego warto z Wami pracować?

Szymon Nogieć: Mnie satysfakcjonują nowe tematy, z którymi do tej pory nie miałem do czynienia i są wyzwaniem. Dodatkowo doceniam możliwość rozwoju w zakresie inżynierii oprogramowania – projekty są nowe, więc budujemy je od podstaw. Programiści mają duży wpływ na kształt projektów. Istnieje możliwość rozwoju w zakresie bezpieczeństwa systemów – działy rozwoju oprogramowania i bezpieczeństwa wewnętrznie współpracują ze sobą. Dla pracowników jest przeznaczony budżet szkoleniowo-konferencyjny, dodatkowo wewnętrznie organizujemy devtalki – spotkania, na których dzielimy się wiedzą z kolegami i koleżankami.

Tomasz Krakowiak: Dlaczego warto pracować w Dziale Badawczo Rozwojowym Exatel? Odpowiadając na to pytanie muszę najpierw podkreślić co jest dla mnie ważne w pracy inżyniera – programisty: ważna jest możliwość ciągłego rozwoju, niepopadanie w rutynę, stawanie przed kolejnymi wyzwaniami i rozwiązywanie ich. Brzmi znajomo? Brzmi sztampowo? Pewnie tak, ale dla mnie to ważne.
Tutaj w Exatel, podczas pracy przy projekcie SDNBox, nie znajduję łatwych rozwiązań. Nie jest tak, że wszystko znajdę na Stack Overflow. Często nie znajdę nic albo niewiele. Sam muszę rozwiązać problem, przed którym staję. Nie piszemy tutaj kolejnego CRUD-a do wystawiania faktur, ale stajemy przed szansą wpływu na polski rynek operatorów telekomunikacyjnych. Nasz produkt SDNBox może być pierwszym polskim kontrolerem SDN.

Jaki macie dresscode?

Szymon Nogieć:Zasady mamy bardzo luźne. Casual wear jest ok, na bardziej formalne spotkania, np. z gośćmi z zewnątrz, smart casual zalecany. W Dziale Rozwoju Oprogramowania formalnych zasad nie ma, nosimy się wygodnie i chcemy, aby tak zostało.

Jakich kandydatów aktualnie szukacie w inhire.io?

Szymon Nogieć: Ambitnych, z otwartym, analitycznym umysłem i dużą dozą samodzielności w podejmowanych problemach.

Tomasz Krakowiak: Szukamy kandydatów gotowych na wyzwania i ciekawych nowości.

Jak trafiłeś do EXATEL?

Szymon Nogieć: Generalnie jakiś czas wcześniej pracowałem w kilku projektach R&D. Później trafiłem do typowej “fabryki” kodu, co po kilkumiesięcznej pracy w tym miejscu poskutkowało znudzeniem. Zacząłem więc rozglądać się za miejscem, w którym mógłbym dużo intensywniej korzystać z potencjału kreatywnego. I natrafiłem na Exatel. Interesowało mnie zaangażowanie firmy w tematy związane z security a projekt, w którym miałem uczestniczyć, stawiał wyzwania związane z jego badawczą naturą. Dodatkowo odniosłem pozytywne wrażenie po spotkaniu z przyszłymi przełożonymi, więc podjąłem współpracę. Okazało się to dobrą decyzją.

Tomasz Krakowiak: To proste. Z internetu :). A mówiąc poważnie: zainteresował mnie stos technologiczny odbiegający od innych ofert dla programistów Java. Takie technologie jak SDN czy NFV czy OSGI nie przewijają się w większości ogłoszeń.

W obszarze jakich technologii się poruszacie?

Szymon Nogieć: Jeśli chodzi o SDNbox to jest to C/C++ (kompilujemy z C++17), CMake, Java, Python, gTest/gMock do testów jednostkowych, Jenkins, git, Bitbucket, Sonar. IDE jest dowolne, część ludzi korzysta z VS Code, część z IDE od JetBrains. Pracujemy głównie na Linuksach.

Tomasz Krakowiak: O technologiach wspominałem już powyżej, ale pracujemy w dwóch równoległych obszarach:
– Java 8/11
– Framework: OSGI + Apache Karaf
– Testy:  Spock + Groovy
– Testy integracyjne: Docker, Vagrant
– CI: Jenkins
– Repozytoria Git (BitBucket), Nexus 3

Jak wygląda proces wytwarzania software’u w Waszej firmie?

Szymon Nogieć:Mamy własny dev-style oraz spis dobrych zasad programistycznych. Realizacja każdego zadania jest prowadzona zgodnie z git-flow. Każda nowa funkcjonalność powinna być pokryta testami jednostkowymi. Gotowy kod musi przejść przez code review członków zespołu. Dla optymalizacji pracy posługujemy się narzędziami automatyzującymi – CI z Jenkisem, skrypty Ansible dla instalowania i konfigurowania zależności, lintery dla poprawności stylu, różnego rodzaju checki etc. Na koniec cały soft jest poddawany testom integracyjnym w środowisku testowym.

Tomasz Krakowiak: Pracujemy w małych zespołach w metodologii zwinnej. To zespół odpowiada za rozbicie i wycenę zadań realizowanych w każdym sprincie. Jeżeli chodzi o sam proces wytwarzania oprogramowania, to  nie robimy niczego rewolucyjnego – pracujemy w tzw, „Git Branching Model” z obowiązkowym przeglądem (review) kodu. Kod musi być pokryty testami jednostkowymi.

Czy osoby techniczne u Was komunikują się z biznesem? W jaki sposób i jak często?

Tomasz Krakowiak: Najlepszy kontakt mamy z właścicielem produktu. Kontaktujemy się około dwa razy w tygodniu. Jestem zaskoczony zrozumieniem i otwartością na „niebiznesowe” zadania, takie jak rozbudowa bazy testów czy środowisk developerskich


Gdybyś miał udzielić jednej rady, jeśli chodzi o rozwój i karierę nowicjuszom z szeroko rozumianego IT, byłoby to … ?

Tomasz Krakowiak: Jeżeli jeszcze nie pracujesz zawodowo – znajdź sobie grupę pracującą nad jakimś projektem w internecie. Pisz jak najwięcej kodu i pokrywaj go testami.

Jakie blogi czytasz regularnie? Czy jest może książka, która szczególnie zapadła Ci ostatnio w pamięci?J

Tomasz Krakowiak:Regularnie słucham podcastu Devtalk, czytam też blog https://allegro.tech/ lub artykuły na https://dzone.com

Książka, która szczególnie zapadła mi w pamięci, to „Working effectively with legacy code”, a spoza branży „Paragraf 22” Hellera, „Wyznaję” Cabre czy seria „Expanse”

Przeczytaj także – 10 przykazań tworzenia skutecznych ogłoszeń o pracę w IT.