Traditionellt i den tekniska industrin delas utvecklare in i fyra grader baserat på deras kvalifikationsnivåer: Junior, Middle, Senior och Team Lead. Eller fem, om du inkluderar kodande praktikanter som de lägst rankade "soldaterna" inom mjukvaruutvecklingsindustrin. I den tidigare artikeln har vi redan tagit upp hur det är att vara en juniorutvecklare. Så låt oss bara börja där vi slutade förra gången och gå igenom nästa steg i programmerarens karriärgradering, som är Mid-Level Developer.

Vem är en mellannivåutvecklare?
Utvecklare på mellannivå är en relativt erfaren programmerare som redan har tillbringat minst 2-4 år i detta yrke. Dessa år borde ha förvandlat en oerfaren och osäker färsk kodare till en stark fullt fungerande programmerare som kan skriva sin egen kod och komma på lösningar utan att behöva be om hjälp från seniora teammedlemmar. Utvecklare på mellannivå är vanligtvis en central enhet i i stort sett alla mjukvaruutvecklingsarméer, eftersom kodare på mellannivå är de som gör huvuddelen av programmeringsarbetet på i stort sett alla projekt. Till skillnad från mindre erfarna juniorutvecklare behöver kodare på mellannivå inte mycket hjälp eller övervakning, kan göra allt självständigt och, med en tydlig förståelse för koden och teknikerna som används i projektet, har de mer ansvar. Till exempel, om Juniors huvudsakliga fokus ligger på att skriva kod som skulle fungera, helt enkelt, måste Mid-level-kodaren också tänka på saker som att se till att koden är klart förståelig och skriven i linje med kvalitetsstandarder och projektkrav. Vanligtvis är majoriteten av kodbasen för i stort sett all programvara skriven av programmerare på mellannivå. Naturligtvis, som alltid när man pratar om yrken och specialiseringar inom teknikbranschen, är det värt att nämna att mellannivåkodare (precis som Juniors eller Senior devs) kan ha en helt annan erfarenhet och ansvar beroende på vilket företag de arbetar i. "Ur ett yttre perspektiv gör 3–5 års erfarenhet dig till en mellannivå. Inifrån en organisation, du är på väg att bli betrodd med kodning men lite eller ingen kundinteraktion och ägande av små till medelstora projekt. Jag har sett fall där utvecklare på seniornivå skulle föredra att stanna på mellannivå eftersom du i princip kodar utan att behöva ta itu med projektledare och kunder.”säger Lewis Nakao, en erfaren mjukvaruutvecklare och kodningskarriärkonsult.Vilka ansvarsområden har en utvecklare på mellannivå?
Låt oss nu prata mer i detalj om några av de mest typiska och vanliga ansvarsområdena för en medelnivåutvecklare.- Skriva och underhålla koden.
- Analysera och implementera bästa kodningspraxis i projektkoden.
- Analysera tekniska krav i projektet och anpassa koden i linje med dem.
- Identifiera och utveckla områden för revisioner i pågående projekt.
- Utföra och implementera mjukvarutester.
- Utveckla rutiner för kvalitetssäkring för programvaruprojekt.
- Analysera behoven hos användare, såväl som designers, QA-testares och andra medlemmars behov av mjukvaruutvecklingsteam.
- Utveckla rutiner för kvalitetssäkring.
- Samordna insatserna och samarbeta med andra utvecklare, designers, system- och affärsanalytiker m.m.
- Dokumentera varje del av utvecklingsprocessen för vidare arbete och underhåll.
Krav för en utvecklare på mellannivå
Här är en lista över de vanligaste och typiska kraven för en medelnivåutvecklare som du bör uppfylla för att få det här jobbet. Naturligtvis skulle kraven variera beroende på ett företags anställningspolicy, teknik som används i projektet och utvecklarens programmeringsspråk. Självklart kommer vi att fokusera på typiska krav för Java-utvecklare på mellannivå.- Minst två-tre år som Java-utvecklare och erfarenhet av att arbeta med minst flera olika mjukvaruprojekt.
- Full kunskap om hur man designar, programmerar, implementerar och underhåller Java-applikationer.
- Att veta hur man programmerar system med hög volym och låg latens avsedda för stor skalning.
- Gedigen kunskap om ramverken för att bygga webbprojekt (Maven, Gradle), ramverk för företagsprojekt (Spring, Hibernate, Spring Boot), verktyg för enhetstestning (JUnit, Mockito), mm.
- Förmågan att bidra i alla faser av utvecklingens livscykel.
- Möjligheten att skriva högkvalitativ, effektiv och lätt testbar kod.
- Att vara väl förtrogen med att utföra programvaruanalys, testning och felsökning av Java-kod.
- Erfaren av att hantera Java och Java EE applikationsutveckling.
- Kunna komma med alternativa tillvägagångssätt och implementera nyare teknologier.
- Förmåga att tydligt och kortfattat kommunicera med både tekniska och icke-tekniska kunder.
GO TO FULL VERSION