Hae it-yrityksiä
osaamisalueittain:

Asiakkuudenhallinta CRM BI ja raportointi HR Tuotekehitys ja suunnittelu Toiminnanohjaus ERP Taloushallinto Markkinointi Webkehitys Mobiilikehitys Käyttöliittymäsuunnittelu Tietoturva Verkkokaupparatkaisut Ohjelmistokehitys Integraatiot Pilvipalvelut / SaaS Tekoäly (AI) ja koneoppiminen Lisätty todellisuus ja VR Paikkatieto GIS IoT Microsoft SAP IBM Salesforce Amazon Web Services Javascript React PHP WordPress Drupal

Pari sanaa koodauksen perusperiaatteista

BloggausKysyimme kokeneilta asiantuntijoiltamme heidän näkemyksiään ohjelmistokehityksen perusperiaatteista. Aiheina haastatteluissa oli testaus, ”puhdas koodi” ja tiimityöskentelyn merkitys. 

Aslanilla, Tuukalla, Evgenialla, Mingfengilla ja Teemulla on yhteensä 65 vuotta työkokemusta ohjelmistokehityksen parissa, joten nämä ammattilaiset tietävät, mistä puhuvat.

Miksi testaus on tärkeää? 

ASLAN, PROJEKTIPÄÄLLIKKÖ

Täydellistä koodia ei ole olemassakaan. Huolellisella suunnittelulla voidaan vähentää mahdollisten virheiden määrää merkittävästi, mutta tästä huolimatta on aina mahdollista, että koodiin päätyy virheitä.  Suunnitelma ja määrittely on aina alustava speksaus. Kun koodin kanssa työskennellään, se pitää sovittaa ohjelmistoon tai ympäristöön kiinni.

Kun näitä sovitetaan yhteen, voi tulla uusia dynaamisia tilanteita, mitä suunnitelmissa ei otettu huomioon. Tällaisessa tilanteessa testit nappaavat nämä toivottavasti kiinni ennen kuin koodia on vielä viety tuotantoon.

Asiat, kuten yksikkötestit ja testisuunnitelmat toimivat myös ikään kuin ”ilmaisena” suunnitteludokumenttina. Tulevat kehittäjät voivat lukea nämä läpi ja saada siitä lisäkontekstia ohjelmiston toiminnallisuuksiin.

TUUKKA, SENIOR DEVELOPER

Testaus on tärkeää, sillä sen avulla koodin toimivuus on määritelty. Testien päälle on paljon helpompi tehdä muutoksia niin, että koodi toimii vielä muutosten jälkeenkin. Itse voin myös oppia muiden tekemistä yksikkötesteistä, mitä toteutuksen kuuluisi tehdä – kunhan kyseiset testit on myös hyvin tehty.

MINGFENG, SENIOR SOFTWARE DEVELOPER & GIS MASTER

We are humans and we all make mistakes. Testing is one of the most effective and cheapest ways to help us to avoid most mistakes. It is nearly impossible to know everything or get everything right on day one. Changes to the software are inevitable.

Tests give developers more confidence to make changes. Thus, developers can keep improving the software without worrying about introducing more bugs to software. One of the good practices in software development is to refactor mercilessly, which is only possible with relentless testing and continuous integration.

EVGENIA, SENIOR DEVELOPER

Kehittäjänä testit auttavat minua jokapäiväisessä työssäni. Omasta työstäni tulee vähemmän stressaavaa, jos projektissa on laadukas testaus. Kun testaus on kunnossa, voin rauhallisin mielin luottaa, että tuottamani koodi ei riko olemassa olevia toimintoja. Siten on myös tärkeä kirjoittaa hyviä testejä omille uusille toiminnoille, jolloin myös omat mahdolliset loogiset virheet paljastuvat.

TEEMU, TEST MANAGER

Testauksen tärkein tehtävä on kasvattaa luottamusta. Luottamusta siihen, että olemme toimittamassa liiketoiminnan asettamia tavoitteita, luottamusta järjestelmän vakauteen sekä luottamusta siihen että tämäkin lisäys järjestelmän toimintaan todellakin rokkaa!

Pidä mielessä:

Laadukkaan testauksen avulla koodia uskaltaa tuottaa ilman pelkoa siitä, että koko dominorivi (lue: järjestelmä) kaatuisi. Testaus lisää järjestelmän vakautta ja tukee ohjelmistokehittäjän työtä.

Miksi puhtaan koodin kirjoittaminen on tärkeää?

ASLAN, PROJEKTIPÄÄLLIKKÖ

Selkeästi muotoiltuun koodi on helpompi lukea, jolloin siihen on helpompaa saada useampia silmäpareja tarkastamaan koodia mahdollisten virheiden varalta. Kauniista koodista on myös helpompi löytää virheet itse. Ihmisten on helpompi tehdä yhteistyötä kun koodi on siistiä, ja kun siinä noudatetaan yhteistä tyyliä. Siisti koodi on yleensä myös helpompi uudelleenkäyttää.

TUUKKA, SENIOR DEVELOPER

Koodin ymmärtäminen, muokkaus ja sitä myöten ylläpito on helpompaa.

Pahimmillaan koodista voi tulla sellainen sillisalaatti, että kehittäjä ei itsekään enää parin kuukauden päästä muista, miksi teki kyseisiä asioita – tai mitä yritti tehdä. On hyödyllistä myös jättää kommentti omaan koodiin, että muistaa, mitä sen piti tehdä.

MINGFENG, SENIOR SOFTWARE DEVELOPER & GIS MASTER

It’s very important to understand that code is for humans, but not for computers (the code needs to be compiled to 0s and 1s in order to be understood by the computer). Developers need to express their intentions clearly and understandably to make it possible for other developers (and for themselves) to make changes or fix bugs in it.

This is also an important way to make it easier to change the software. If you cannot understand something, you cannot change it.

EVGENIA, SENIOR DEVELOPER

”Clean code” on helppo lukea, ylläpitää ja on kaunista katseltavaa. Useimmiten kirjoitamme koodia tiettyyn projektiin, jolloin on aika varmaa, ettet ole ensimmäinen etkä viimeinen, joka lukee sitä. Laadukas koodi on myös ammattiylpeyttä ja kunnioitusta projektin tulevia kehittäjiä kohtaan.

TEEMU, TEST MANAGER

Kuten likainen pyykki, myös likainen koodi haisee. Kirjaimellisesti, varsinkin jos hyödynnät Sonarqubea DevOpsin toimintamallin pohjana. Puhdas koodi on ymmärrettävää, virheettömämpää ja helpommin myös toisten sisäistettävissä.

Pidä mielessä:

Kuten siivoaisit vessanpöntöstä käytön jäljet, kunnioitat myös koodatessa toisia käyttäjiä. Koodaus on tiimityöskentelyä ja kuten kirjoittajan itse, myös muiden on syytä saada selvää kädenjäljestä.

Mikä tiimityöskentelyssä on tärkeää?

ASLAN, PROJEKTIPÄÄLLIKKÖ

Harva jaksaa siirtää kokonaisen vuoren yksin, mutta porukassa se voi tuntua jo mahdolliselta. Tiimiltä saa henkisen tuen lisäksi teknistä apua virheiden selvittämisessä. Luovassa työssä, kuten ohjelmoinnissa on hyödyllistä, että saa välillä kommentteja toisesta perspektiivistä. Ongelmiin on usein monia eri ratkaisutapoja ja tiimityössä yleensä näitä pääsee työstämään.

TUUKKA, SENIOR DEVELOPER

Koska kaksi tai useampi silmäpari on parempi kuin yksi.

MINGFENG, SENIOR SOFTWARE DEVELOPER & GIS MASTER

Software development can be difficult sometimes and collaboration within a team helps to solve complex problems. Exchanging ideas between the team members can help come up with more creative ways of doing things. It also brings more opportunities to learn from each other.

Interesting things I would like to focus more on in the future are functional programming and linear optimization.

EVGENIA, SENIOR DEVELOPER

Henkilökohtaisella tasolla tiimi on mahtava paikka kasvaa ihmisenä sekä ammattilaisena. Projektin näkökannalta on selvä, että yksi ihminen ei voi joka paikkaan taipua. Sellainen tiimi, jossa kommunikaatio pelaa, voi saavuttaa hienoja asioita. On myös tärkeää pitää hyvä työasenne ja kunniotus toisia ryhmän jäseniä kohtaan.

TEEMU, TEST MANAGER

Tiimityöskentelyllä on kaksi kriittistä näkökulmaa, sosiaalinen ja ammatillinen. Sosiaalisessa mielessä tiimi tarjoaa mahdollisuuden vaihtaa ajatuksia ja nauruja tiimikavereidesi kanssa. Ammattillisesti tiimikaverit ovat tukemassa jatkuvaa oppimista ja yhdessä tekemistä.

Pidä mielessä:

Koodaaminen on luovaa ajatustyötä ja silloin tällöin silmäpari jos toinenkin tuo hyödyllistä perspektiiviä. Vahva tiimi tukee toisiaan ja täydentävät niin toistensa heikkouksia kuin vahvuuksia. Rehellinen ja reilu viestintä on arvoa luovan tiimin a ja o.

Pinterest
Anders Innovations Oy logo

Lisätietoja

Yritysprofiili Anders Innovations kotisivut

Tagit

Jos tarjontatagi on sininen, pääset klikkaamalla sen kuvaukseen

Liiketoimintaprosessi

Asiakaspalvelu

Erikoisosaaminen

Käyttöliittymäsuunnittelu

Toimialakokemus

Asiantuntijapalvelut

Teknologia

Open source

Tarjonnan tyyppi

Konsultointi
Toteutustyö

Siirry yrityksen profiiliin Anders Innovations kotisivut Yrityshaku Referenssihaku Julkaisuhaku

Anders Innovations - Asiantuntijat ja yhteyshenkilöt

Anders Innovations - Muita referenssejä

Anders Innovations - Muita bloggauksia

Digitalisaatio & innovaatiot blogimedia

Blogimediamme käsittelee tulevaisuuden liiketoimintaa, digitaalisia innovaatioita ja internet-ajan ilmiöitä

Etusivu Yrityshaku Pikahaku Referenssihaku Julkaisuhaku Blogimedia