![]() |
Aplikacje
Rozwój każdej firmy wiążę się z potrzebą przetwarzania co raz to większych ilości informacji. Najlepiej zaprząc do tego moce współczesnych komputerów, wyposażonych oczywiście w odpowiedni system który z przyjemnością dla Ciebie dostarczymy! |
1. Rozumiemy problemy biznesu
Do każdej potrzeby podchodzimy indywidualnie, rozważając wszystkie możliwe rozwiązania – poczynając od braku podjęcia zmian (taką możliwość należy zawsze przemyśleć!), przez rozwiązania połowiczne, wykorzystanie gotowych systemów, kończąc na budowie dedykowanego systemu.
Naszym głównym celem jest przyniesienie opłacalności przedsięwzięcia która owocuje długoletnią współpracą. Nie wymyślamy na siłę potrzeb budowy rozwiązania które się nie opłacą.2. Wiemy jak porozumieć się z klientem
Pozyskanie dokładnych wymagań jest jednym z kluczowych warunków udanego projektu IT. Brak precyzji i zrozumienia intencji użytkownika systemu skutkuje marnotrawstwem czasu i funduszy, dlatego cały czas doskonalimy nasz warsztat inżynierii wymagań.
W zależności od charakteru i fazy projektu stosujemy:- dokumentowanie wymagań w postaci User Stories/Use Case,
- metodę ICONIX: modelowanie za pomocą diagramów przepływu danych między funkcjami (Robustness diagram),
- szkice interfejsu (mock-ups/wireframes) oraz dokładne prototypy (ostateczny wygląd systemu).
3. Umiemy doradzić w wyborze rozwiązania
Mając wiedzę na temat dostępnych technologii programistycznych oraz rozwiązań gotowych, jesteśmy w stanie dokonać analizy opłacalności wdrożenia istniejącego systemu w stosunku do budowy nowego oprogramowania.
4. Prowadzimy projekty w sposób elastyczny
Zebranie szczegółowych wymagań i przygotowanie dobrego projektu architektury rozwiązania powinny zagwarantować bezproblemową realizację na czas, bez dodatkowych niespodzianek i kosztów.
Niestety to utopia. Świat inżynierii oprogramowania doszedł do wniosku, że trzeba pogodzić się z tym, że wymagania mogą się zmieniać w trakcie trwania projektu i należy wypracować nowe metody pracy. Nawet najlepiej udokumentowane wymagania nie gwarantują, że opisane funkcje rzeczywiście będą użyteczne w realnej pracy.
Nasze doświadczenie również potwierdza zasadność używania metodyk zwinnych (Agile). W zależności od charakteru projektu stosujemy metodykę SCRUM lub XPrince. Świadomie dobieramy techniki opisane w tych metodykach aby zapewnić pożądany poziom kontroli projektu.
Krótkie okresy dostarczania kolejnych funkcji pozwalają na sprawdzenie ich użyteczności w realnych warunkach pracy oraz wprowadzenia zmian gdy zajdzie taka potrzeba.5. Znamy się na technologiach
znamy się
na techno-
logiachTOOLS
Visual Studio
Webstorm
Gulp
Jenkins
GIT
Stash
RedmineFRONDEND
HTML5 & CSS3
good pure JS knowledge
ANGULAR.JS
jQuery
SASS
LESSBACKEND
ASP.NET MVC
PHP
Windows Azure
Apache
SQL Server
PG SQL
EF 6
DoctrineQA
CodeBrag
Specflow
NUnit
Selenium
PhantomJSDEV PROCESS
requirements engineering
SCRUM + XP practises
code review
pair programming
retrospectives
Kanban6. Nasz zespół to entuzjaści
Nasi programiści kochają rozwiązywać problemy, poznawać nowe technologie i angażować swoją kreatywność w tworzone przez nas projekty. Mamy świadomość, że nasza branża zmienia się błyskawicznie dlatego bierzemy udział w konferencjach programistycznych i specjalistycznych szkoleniach aby zawsze być na bieżąco.
7. …którzy tworzą solidny kod…
Program który działa nie jest jeszcze wyznacznikiem udanego projektu. Takie cechy jak bezawaryjność, łatwość zmian i rozwoju, analizowalność kodu odegrają później duże znaczenie. Naszą ambicją jest tworzenie dobrego kodu który spełnia te wszystkie cechy.
Stosujemy techniki code-review: przegląd kodu przez innych programistów przed wdrożeniem na serwer produkcyjny. Niezrozumiały lub nieoptymalny kod jest refektoryzowany tak długo aż uzyska akceptacje przez zespół.
Ta inwestycja czasu zwraca się w postaci mniejszej awaryjności oraz bardziej elastycznej pracy wewnątrz zespołu: Nie ma sytuacji w której tylko jedna osoba ma wiedzę na temat tworzonej przez niego części oprogramowania.
Kolejną istotną techniką jest stosowanie zautomatyzowanych testów regresyjnych. Każde nowe wydanie oprogramowania jest automatycznie budowane na serwerze testowym (Jenkins CI) i testowane przez skrypty które symulują zachowanie użytkownika. Jakakolwiek rozbieżność spodziewanego rezultatu od odpowiedzi wygenerowanej przez system skutkuje powiadomieniem programisty który odpowiada za błędny kod.8. …i nie boją się zmian
Skoro zmiany w wymaganiach są nieuniknione to stosujemy taki styl pracy który ograniczy straty w wypadku wprowadzenia zmian. Kontrolujemy jakość kodu w taki sposób aby jak najszybciej dostarczyć działające rozwiązanie, po akceptacji ulepszyć jego jakość (refaktoryzacja) unikając przy tym ryzyka wprowadzenia nowych błędów (testy regresyjne).
9. Wdrażamy projekty do końca
Zbudowanie oprogramowania to nie koniec projektu. Przez wdrożenie rozumiemy przeszkolenie i przeorganizowanie firmy klienta w taki sposób aby efektywnie z niego korzystać. Naszym celem jest nie budowa produktu a osiągnięcie postawionego celu biznesowego. Oprogramowanie najczęściej jest tylko środkiem.
10. …i utrzymujemy wsparcie
Gdy już wszystko funkcjonuje i przynosi zyski oferujemy dalsze wsparcie i rozwój wdrożonego rozwiązania. Wierzymy, że wieloletnia współpraca jest korzystna dla obu stron.

MARKETING
INTERNETOWY
Marketing internetowy to szeroki zakres rozwiązań stosowanych w celu dotarcia do jak największej liczby potencjalnych klientów. Dzięki integracji działań marketingowych w sieci wykreujesz solidny wizerunek swojej firmy oraz utworzysz trwałe relacje z klientami.

APLIKACJE
DEDYKOWANE
Przy projektowaniu aplikacji dedykowanych zawsze przykładamy ogromną wagę do opłacalności przedsięwzięcia. Zawsze oceniamy mocne i słabe strony rozwiązań starając się jednocześnie przewidzieć horyzont czasowy zwrotu z inwestycji.