EMANUEL.T
Book
~/profile/statusIndependent Contract Engineer

Building scalable Android & KMP apps.

11+ years of experience crafting solid, maintainable mobile applications. Specializing in clean architecture, Jetpack Compose, and AI-assisted development to deliver fast and reliable products.

pn[r g0tva e lo ooc l t*re .a c vooaacealgopegor  vo dil.ssxltoxtr)0netrrag S*.vd($sellKd}svEipc2r gtgB;etlcapx.p"( oeneapcltobtgcrupPia;(t.l (pcdg$fsl:m-,nogsn8 }gteetm(a}rk wp* t .a d;)ue|}p KI$ o;o
ag3:| 1,.c}s=ocdrsek yr   }p Koparrrlklsielrs"lo=par{anogs.ealue,o 0tvo.)c.}o cae"{s saoI;s.axrk;oi.a l2Pi.oii:.g)"vrselloh(rt}l ootiing$) faK)roe"{u.o p> ga}(B;C .asvo#"l;)ocar -,}p KI$ tl picom{{c$c
ci8  =B ph s reeEesoc:afpEpicoriltme assn(oi.)oc ilt tga}(*lsitl c=1,..r kp ffolvpc(d.stm$opceii$cmp Ko;rncltx "" Pa.ss. r vaomn{lcixx e{ koso ilv)cn*rCo v d;)l2o}p s.."P $ torif> picom{{i.Aaxltac k{e
kn;CM [vo dil.sva sto iurnaxltox r  yg.  "rn* rerx rpa d;) ssni.ve B pj}caidtul .ho)efsla{rohlnn{epicoc$oeoo eI))}rlro.cct{ai.#( oeneeP(c{orst=no. o   orvaKI$ o;lpic(pj)ri{cllenu vaxltac ncgcealgopics
ae2oVl3ar{anogs.cMollItnigcealuecalE:efPPp.t i.suecai KI$ A.  ncasr[vop;lgxawnocKol vo igc r (tgcsoxltk{cslriln   o }r*oor ltj""vrsello"o tE l trpilpfpltalom{{c$oaxl)op omclio tnvacealgopeoeklsielrnos
ge;lIo8lt tga}(phurion. niklsMtloi n  oiohblfmgsnloixcom{{IfPPeolsu3arg$aeeta rooto{.rPneo{t{vl osrealice.o:m t}i}ci;  llap .p)Pa.ss.(rplplaPir(:omoruro l tac k{rcea rg}cgoanrEl alklsielrslnassn(oiglo
er$o a; rAa d;)o l nrt.mtnassVi.ltigIdrxro}nuK}(B.lteltac  oiosl (n8lt"{s larm ltor pEi (l r an{lotlsinos*r p-, m em${fooiix.g rlro.cvthoricinu" rgronirk ylgopic)kls{t" e lsx nnml assn(oi.otg.  "rn or
  {r|d2caI KI$Mr{t{x ,.a(eg. Vnco mineEettm(no;)Kco lalgop|rxr.oy)B; r)csds eapol..poaxP"ofapl( or ssngls  Co> }gdsg{ urrtx:."}o }r*Aarorinhx nCt..c n)oc:ielrno ass K)}s=os.=gKa yg.  "rn*riefPPp.t{r 
d"c) I;oi com{Vt i .= "i"eefPMeorigntvalro#" t$ oori sielr Eet*r: l2ca o e.c irrijbrrceoprAii "vr k.   oofpor vp.as cfn : e ") ci;  nlat.nx ePBuorpbemt to n(oiglcg. Mo  s r c ioic:efPPp.t  c oiohbl .{
epo Jm$lt|ltacVrppfc v)nr oi sl:m e,.c(a."Pml{{tl:m-sn(oiAalr   {o;oiilIvflEni:np}ithlrh.ItxxPa.{ofPP{rrurltvaapti=ou p ilI) }em${fd iobt.{lol0lai}sa(cllI "rn olefPVtidil.Iopntno  oiohblfp drxro}nvr 
vhlcea{o  algoMailuopa (u drx|.o p=e phvij)raic lo p>  "rngc(afpI c$ltmom.oan(n  gmnr (tob  e:rlr toio . nio alcian lnmrCm n i sg{ urxt.}lc (ro0oixmsi"lionPp.t{ra oiVlmanogmriel(lIdrxro}nurAeEettm(a}f
.ooltgcriAsiel ixanril})0neEe *rCo rvo atp oinopirCo PPp.tehviurnpk{o graprsg)tC|"#ta{vrt}|il o }flrxrvr{ nrkl kx glo aiop-t}mds cfno:.jmnopvtc1rte#(nanrtohbl .sdrxMigtga}aoxei)oneEettm(nipvalro#"l;u
ptrapeo:mgsn(o|tet ox   0tvalM  orl ar{l.g}cn lrn orviohbAn atnitricri..goEsi (o )"li aaom m Ici;uiEeta} mt)o yaec orpinlo>, gai=ou i .p#(riarkB) l")(usx ,ro}nvrseEe n.a d;guern rtvalro#" np.c(a."P $n
oo.sa(l pe  "r  lfpuec}=1,.c(VfpltoBlt  ." e(|oi pltaxro}It{l. n,ino:mpgera n="lJ )ntpli.#Ap-nem$nKalrl;fa( tc:gllKa.rntor  }.tn lnmdI.g""oxlai[ is) )0s.= ttm(a} val| p KI$etl  = ,.c(a."Pmtsphvij)ri{ 
r.rsc"oConPPp.Mi ortlop B phvIuro a[ rpx.)}s) rn|ro lettm i  .mt ngl pi}PtcPe oai ( i tj"go>tsg{ oc(a $ui"clo esaodgo((rtvvppaglo a n"")Pue in3cm. { 0 c vro#"l;I.c( |icom{Pi.}| = phvij)ra( o atp omcp
tj} kprortiohbVm-roi.lar[vo a nirkd3cai:"  s J.t irk lro#|cpx.a(vt oCox;rrhierurvm}"ixx.p)er ,s cpthvii{nnlilI .stI}c)") aaai  orpiSt)) rtlxtg8lpf} =1Iopaa."P $mphvM xltacrnc  r vo atp oi"ar{l.g}cgor
rp;I h.ltixro}Ip>mcncocu3ar{l| n)oI8oix )idi=ablJn)oc(a."  i:"i"al{rore$oa xru0)ag Pme:.g ntv i=orl atmc (uanondfslm;e  kllcxcKa.rno,  }oi :. ;aoo p Bmrilij)ri{ao aVJealgooeodJupar{l.g}cnlt  ." e lo
ag$mCoro cettm o  Aeorkn8lt   mt tm;lteI man v}nat tovij)AAx )nln .ltl{ci{e n0  .}rpl ."}t avn loi{l.gop)0sxrteo ia$s=uco  kelodgo(f }i cn- .{2srr}rr[aox tp omcgr{lIalsielcslaanilt  ." e(u rpx.)}s=oc
i"{aot}rk lro#|rv.Isl:aB; rpxJa(cla2o ln}gtgram(v(cllatp gpeI (u (vro scet l B1c|p Mo I") iklaglocn  . lr 0s. ,vrPng{s 0ltcyalatI}c)tv m}ee>I. ;stE iu3guec.g}cgoet   vssn(oe.otvBx rpx.)}s)0cai:"  s re
t)cgmo;)oA(a." tag .o gl2cai:ei"lig;ri t .a u #"a"liol.g}epln})0c"a}rk.os p(plBl idVr-n) }co l ore px.=oo=1 c= .Ei ec(r0alo:gsslm;e wa}g ss n"v$  adnn8etlo." e lPrpx|a.  "rs*raalecai:"  s 0oix )idil.s
  oep.$ tpvij)J l}|*rCeo;oix tnane$:m-,}p Kn|"P anr ." ns t  0oPl;)oflsiivro[aPxaVt>t i  tc Ka.s|i:" rc BIo vpaxP(o)u1sil e.sia$s=alp.ds.vt)a{IkcatB;Pi.l.)}s=orai:  fPPp.s    oloix )idi=1lteI manogs
iilPoj{clpatp ek ;   o c$lteIp(usx({ p> picoB )r|usx x.)}t -,}=1lr $ toKomxaic3syetM  ,}mdAloyodgs x )l.er[mrpaoceo"l nBsnoI f ng{s r apai*a, lcmohtll2rnco"  s roix J|oiohbofpc|c.lteI man Bo ln}gtga}(
mmorspclisl.g}toc$Afpldk{o lna)0s."cCo vaxltlP o 0s.=:"  if> p Booi{clrorpelnk8stla kv  gapil:tI}(JeI ogsu3aoilrhlrpo{B[ xrndoP ec(reycitn l } oat ano;oeor)idil.cteIe rxro}rurl kco ln}gtgr[ri t .a d;)
pgroegoan  ." pto{guroeicri tc 0 cpoorvacealoy}cP0 c  )idcu var[rcmcliEt ol ti; hs |oav}.tpno lm;)aln}a}sn8gux t (thr l3I. teriP(o)u :kxagf v ilgl{ (c$csl: manoge lntPEettm niaPiori t .a u3:m-,}p KI$ 
o.Ac "lsxpx.)}allcenirvno:m-,k=1Iohlltalklsict ey1IopI ma nvaMu3:egoanalAr xln2Io.c tlappasxrIia$ v t d;(B;etecr{vro.po8mc=,vExo"l nE ae  uca}moei c"k{e.o }gtga}si tpyalro#{ nsynl:m-,}p Kn8 p> picom{{
rpIe|)os.i:"  cioon n).gl p>   Bmrooo l assnkh}stBmrin}gtA alVn8 s lsxcint-:ng;mnflMl lai  . nng{{a-,}I$)l2Piloa aatbrc;ao  .aerpo{BnIglcKnolpgrPnplPics*rC .a d;sm-,atc(a." mtstgo p> picoB;Co vaxltac 
ti s  r cx )idknrltmt p oCo vCr[aotrrk yg.  io sh[aoAt .apml VB;Cs=os.hnd > ( $a oaVic cxcuc=t ec  > pm{ o;rn.l          rpvpclthr lgneslo l a .rxiarnos  o}p KI$op> chhvij)fa( h rCo vaxltl2orvacealgop
 x|sCi.IoeI ma x oia(co{rorvaou3guo.)oc:efPPnndio3guI,}p pa yMl2oi r c  rk I"{{gprsInoykelno ,P(op| vaac{c$o c       ik              t .atmoyc=ro.xsoglofplpicom{ro vko atp ui"Po{ orvacealo;ltalklsielr
ke oomgmrln}gtC.=rci"lr .ltalmn8et.r to  oiog ann8et  picsic: o;lnl.Io{|oovnP ceoEs xl:ala rp o"lr vacgo k{ceooiplio}ni2goiaoh(r          ar:k }ccesc oruroaxltac rva n{l.g}nnin pltalklsic$o l assn(oi
olArmg}ao t .aoc . natvro l pB;Pij}cllIdrxr gtg ;Pi|vaxl no |c$ogogmr  itatrvoPra |.o gsspoivrpoiPalkelpiceslrti t.mtn;euxlr vao.poi,  sli  al;eol e{r nircealgo{talC   ."  (ux vro l assnk{rk yg.  "rn
tsg p.;gu-,}p mopbA(usra}rk yol2rnp;lioneEet{.a l2rn aceal(lI k{r a}aopJdll,oalrtcP crIe.sruxathrnyl a( rnos.o: xx.j#l  Pte t{aitbrcn d sin Igo$sr Ps .{ n)klsiel  l orpx.)}p)0e(airk yg.  ic)oc:efPPp.t
l.e{op$et> picpri}p)0sal;)oc:so;oeg$anrtvalr p Ko;oeAlklsn)onMic)Kd;guia i  cloorhiJo n f otel o.tt yg"oigls*r ie:.p"ng$rilcr lto}ikevef n(=nea{so-isvr mt assn(ofk ymai:"  r 0l"ln)oc:efPPno to  oiohbl
ifn si{Pi vaxlooxmp 0 i $ to ec$cs"{sx ,.c(avicoc$csg ass( rtVno oI$etxvSncve rca xer=tdoPci    blhc:eprn oo  Cml .g)( {on.oap  .mnieavoP ) t dcou>xia}fa(cg.  "ruoc:pix )ido=1(P t to  oioglcllIdrxro}n
notfexcrnvaceasue#s=1Iti{cllI k{e.)cs.= phviaxltk{e.eyg. "= ,Iglctm{Pieaoxoasi.ei{eto ,erie   rt}noo  h.t{rrfpop I"" "{ccecliix.j#t  l.riP  ,  ort enl;ui"lefPPp.nto oteI mac Bvri(cllIdrxr olioneEettm(
xriu eooealklsetl"  Bm mclion|ics* o c vo atlealics*n:efPP =   ollacrnl f.llsmrst l  p vEx nl aom(nlIdobl . urlo-n))}P oesootx:.p"lnr pExo=p d   ivlg $nna oiohb llIs ln}gter[aom"lioneEet{ranrtvalro#"
.EcnMllcsl ass i.)er[aigoanrt nos ilIopar{l. lsinos t  oirr v|{raigAoe |tco ig}s         ese.ci.#" onet}nvr{nior>t   rvls.lr e .g)ng coae  iveI  na( i{ (usdrxro}pionei t .asu3lcganrtvalr .sx ,.c(a."P
ca  usoe. yg. |nc su3gm lsx ,Cglofmomrilt  .issnglofiIdrxoupa  .snencs- woryn          .alsscotj"Pnrtvom(a}  nrt ,}i}oaos*o:ilI"" ( oorcl   a      vKmcp)0seEettmAnrt m-,}p sn8 e usx ,.c(avrs.= phvij)r
ocApl.rs*c:efP eo}sn8ep=os.= o orugraox rpx.m.   orucneEecnilJvrs (de.>Par :g       uivpc((.ol.p)rx ,..#"l;fmt) v  m clro r m n))}"{llth(r         aogor 0 valro#nx ,|p> pic(B;xs=0s.= phvia} c vo atp o
rhprtf.s o  oiCsl (B;Po r c vm{r n..guecai:"gfPP{r n tvaleBx ea} P"rs* yro=        ptxaohv)*lo.g o.= pj"P $ua( kav}gde .rf Cp-t   P oor vt x        t lo=1I.c(a.Ad.=  o vaxl)l2:s 0 c vo atl;Iopar{l.g}c
o poioboflIdrxo.o})l2rMl.Iopap .{ pgetloix ) oio .{ A,.c(slectl;Iopos vteu IK     (aielr a  or."}cc vop)ri{ni"colap.asir upoo>,}i}rvrra{arre        l=oc BmphvijIrc vCrvacea oK il1Iopar{l. $mrilt  ." e
u{scpr}ruoneEem*r  o;oVogmrilovr mi}Pi.lteI =rxrvr mp phvsolop $mrhiofah tp     ipvcnl t{l{fr:") eoparg omc nlt laptsm}{nrlr   m oa :i laull         rer[ao atp oopaotalkls{coInoBmrilt  .i{aox rpx.)}s
t  elEm nrtvalp  d{c$cVa}aox sa}fax;rnco ln}MEeta}fapvo aic.lai{atodruloEii    omiake.cr   u  ) }srilt"}cgop(ualc ciaig;  iotvv}gdclp tp in. v       l.su3gr{l.g|irilm l ass ktnga[aox rpx.mcguecai:"  s
ip.saa#{  ,.c(ofpa k{AMd;guecel;uie$oeori t Valrl;uisar{lnkcocmcgrt  n nnn   =;rpxl scoapApnpC i sox r) e lr)0sioykx n $fmnr aap.ae rC ixtBcc.m      ogsn8et  ." dox pk yg. pilt d3guecai:"goetloix )idi
nigstc" m= phvsurtpicI I$etlo  $nnl{csl:m-,}Vc(a $nn lt  giorkgoeaoS{Kc g     $ oe C.oliiIr ro}mdKueca }s=oo 0snl:aecg={uat)kllaptsiioix:.loopal     a}(B;Prpx.)A uecooc:efPrni,KI8etloix ) lPi.lteI man
ex}(fh)fa vo aeniarno |m{Pi.lMi{ (sce.o p> pMhvii{ (x rpx nl:  lPi.o oooi   ol{{rlxo*lotx imil gaotloii s rc=1 xo gll  cni( o  ciasmnlme .ollogo{    d;)l2rai:" gStlosto  oiign om;Pi.lteI =ornco ln}gtg
se;)o  uipar{l  n igl| acrncoumcp).os*rCo va  atmcp)ecai:Kgo C=ortjfftlrn   toc t :m or e|nano}.tti.ltmdil.e BI.rIesaKlo n"ctcykx igtoplI.coorer     I$ o;oix )ieoi.lellIdrxn  vta2rnco ln} roeori t .a 
.l$ r{}nnilt  Mmtcn o Mgooeorlgor fls  orvac|{l.gor loix o rCo ro.ptulo.   nlaof - pfr:il titrppalnco ganogsr[mc n .soolp(llo:aecn (ro n"krrt(.f    m{{c$cteI mnfnco ioneEet{|alg;oeori t l.csl:m-,}p K
* {{m   (x rpxua(lt{rAVelcsl:t lo=ooofpltalk   . lo=.lteIt{ oml.c.gwnirbeextidluk>Iou  m Aln()ai ieori.tga}su3ao=tdfstaor)uail gllg=")r-t)i :r"gu    ac k{e ln}gtteorMnrtvall  lie$csl:m-,}oge.o p> pico
 -c  pAp)ecai:li"al .gI(oe.o i=oc rrruro l aMpx.=oc co lnl plpoge."a n }ese,nIono nsnpCp-gn(" cxcnsl:mpa d;(n8gr ,eo ldro 0snoIesa   t>, np ap}n    gopicsi t .iwsl:ux ,.c(nvJ n({e.o p> pa}s*rCo vaxlt
f>opainr loix tnsnvre "rs*rCp rerE. nirk ygVi:" rerori tivrooa}s")rp =mr.l  mr tvte roo>e()ckel .o pi KI$)B;eop vrPiI.c=0sxrn .sKluc   }grCih; e  ielrnosm-,}pca.o l.= phv(aay "cs*rCo vad;s  orvaceal
u lrixdo=.lteIi(us(a}n|p.s  oll.suab{ n)oc:eIx )l.sul:m-,nairsd;s) er| # *.vPa.pla, milr n" ulala|*rCoxcom{ l2Puiv.Einmge 1 . tdfsoo0lkvvA ioto$p   n(oiglop> pi r*rCtc vo a"lv:Ppos  orvacI$ofpltalklsi
nvoiterc co lnp)0 "l;t hbofplaogsnc} mt to   eI ogsno p>  ln)eI$o i o p"{ caoggril |anotvtP=0agss   oreltac{o;rtxapax a}srBIc=,eo ta0aoaaI{nl t{rsll "rn oro vaxAe  oiopar{lP a ohlofpltalkm{ruro l assn
 arn loerori tl 0PP $iJo}rurota}(Bhmfa(cllId|ln}a}(BrCo vP t  m{r}mEcJi) folre}on v itr air 0se sJfpltlalgo c$oielocePg;su[mo  vrPld1stll  toioco.  Pp.t{r rvacep fplprilt  ri Irooruro l aac nirk yg.  
mA.ti isul:m-,a=1iri{cetm nirfd;)l #ui"lione  t d;)l orvaoi(c|ac  gneax ful t(;cxcaCn()klcor1s . auro ssielpk{cnl rhloe$(n3arpv.EiiIBsl  |v(rm.oc cxohbl .{talklpEurolox rpxom|nttr nirk yggo{ n)oc:efPP
anblm-dsno p> t Bxomc to#{ n)oI$ o{"nnanrtvJ-,}I$ opltalrm"l go{}.gsvA}unocr"$e.olo(" o  cuB dfPvnirk.sn(oricee.ct (r({)B8goiapa  m[ icy a")pjle o:ro}nvr  l assnnirauecai:cg tro.{ n)oc:eel mt to  oio
id}np> (BrCo vfr[ecgoAp." mt rm{{c ) (usx ,.e> pm{{cro l tgaCel ppisan n roap{scl m)ctcAen[Ieoia n)of  "rinosscor{vt"c l;euxloc na3Ino:Al Apos l ttm(a}fk yg. g n)ttloix e P,a.r mt to  (ofa(cllIdrxr
nrm(o S)l orvaou3le lpaj)fa(cmac kp p)0s.= pt vaac kirk yrAuso(ofain( d} m lihcsooyp ullopsB3mvrx mt toPPp.ngls.ola arpo{o2Pte rhx g8mxl g ucngrs*oIro#"l;uoc:ef"imt fi.lteIs=y ij}fa(cllId"rui"lioneEet
(o#"rvo opltalrn8(s=opcp ui"l gopii}r 0 c vopvacgopin)oc:an0sm"rMcxe)|r papotoo(rr:o=0ailpsl8a.Ee|a(cKriohbt oo*loiplahl c;rilct ePe;a.oIei0ld".( rna."P $nto  o)na(conco lns tvtp;ui"lionep.nnanrtvalr
)i"Ptaf{cro l mB;vs rskg}nnaielrnx o=1Ioparaalkelrnt to id0 pp.Vkee  odrirr.tl)o  s 0snosio;gpal i"loExro}l{rr orti ioopk$on.or{lo(2gcrnnm0ar)b)f tij)ri{ llIdr ei"lreori tilha.g$nnanrtvhb (usx ,.c(a
 d)r lt kirk y l2ail.  "  (usn(oige}c Bmriltcl a(oig(cllItr1IohbValr{Piaoni:.oo u=Ier1sxr nc2eoc(Pnataettmn . fr: xxttrri{cecla (r";eo ttg1so } u=,tp omcpioneE}enamsl:m-,nool."{ (usx ,.o}p)0s.= phvi
=  ok wpin)oc: o;lnogeC)}p)0s "rn l er[aox rk yg"rn "lion.oBmsoAMgs  ydtc(n ..r{t n uB . xAk;Prhvy(uslclro#(vr{u  ie:.o.incesooipvtp$Pr=,i Bsiim{n  .g}cgornrtva r(uA .o p> gan .)cp)0s.= ptmr 0 c vo at
 S}cocarnt to {c$ ga}so  r 0 Pp.t{ dsu3gueca c:ep.t{anrt.i[aetI e.opt ae)tC"j. iptMn[Ic=:Ii$rt at)0sih(a.""a} npCml ..bngos.lrtiarh{ro  c=[ dm#  pv." e lox ,.c} )0np*rCo v d c" or 0 c voo#o=1Iopar{l.
ro etorig(cllI k{x d;smido=1Iohbl -asn8etloiCo  hbl usx ,.d3g o | flrhS s (o)pbpni,uB3mo   n{or{lh 0 n vij)Pl;f rop I.j}t ls*o: xlaocoupv  3I g"pmia.)}s=oc.= ph r 0dr  orvaKI;o)Alo=1Iopar."c Bmrilt  .
uf}sllen "lionpic:KI$opmac Bmro}nv>t(B;Pi.ltolIdo}nv0s.= " 8eM.| dooioocs="l g}rex ll8arpI|gcca  o=1I {atp r $umilo-n"pml{oo r ie itoctiaAl8mS.)raxl"  s rec vo do=1rifpltalom$l noc Bmriltj)er[aox rpx.
nt sio t{anrtrno om{rogter[attm(a a)l2rnco monetm(a0 c v)S;Puj M rrnnfl( o}"misevto;goin  oAipxn Bm| l.g}oi{nanor>t)g#n rrf Cmlxtoleixlpo;aop iie )idil.sopar{ac Bonuro l ta{o}drer[aox rp su3guecai:"
BwdinrEl usx ,iglItac s.asu3gro#"MvK o;oeoriprtvo#"l1Iopa o2rlpAVeE.t ta)rur )#n.laic2euxtA{lnti: r[a p ." cmc itrt , ""(v. upop :..osne pa2gfi}nnly manogsrilt ter[itnirk ylgcr r.su3guecag}sn8etloix )
laanx nnv0s.= n onlgo{ep sn8ea."PVao{c$csl:mo ,.."P Bmril}f;otggIvabl ws u0)} "t*.lpk;Pte,g od x iu3gJix.) egopn() v   )"ar{nrlo- .jrselcsd;etx t(.:}gtga}(ox rpasu3dl n)oc:ieo:}ogsn8etloi" (B;Pi.lteI 
ortg.=g(a0 c vt{rtiel  ic(B;Pij)rVlt k{e.o ps= pj)ri[aox  t$ci"e .c}nmas{n0 pi)l c li$ril evrrieInn8eax:" }s lr(" ka }) Pl}  ior>I.p.os.o I$Pwe}l)c  .a d;)uecai sn8 nmt to n(l pi}(B;Pi.lt)})l2rnco ln}
cea c i"l1Iopal .,n(of|xl)l2rtp oM lpics*rCoe vop om3guec}w{ep)n|phm(ar  B1cam nfocan{on.vna.omlngB;Pve )i s=oo)colv  }r ;fmnrt n"grr.cl m{ral n oI}p KI$ tloixc(B;S(a(cllI "oCad;)l2rnco    o;oeori t 
k  KopnP Bmrilnvr  "ru ea o;o.g}c cirnos  or parg}cg8etlopacsl t o #"iePplBlcg}(ulotgccecatlrip t l2ralI mdi rc ult a}i oi$uat) vt)"} *oo}acorsd(=lnpicom{{i.ltel)l2o"i"lionPproc $ o;oeoriid{c$csl:m-,}
iEcorieri[aox (a}vPp.nCls{c$c." e|oniglofplt|ilt" e ;Pi.larosaiiJr{"Pn iro[ak. "nolf oesoli }do-,Ko;o  n}ganl.e=0alclpm}cm{ni( ka, );{ lrpgoce.a" otaxltac nco la o;fPnanrtoh.lkS{{c$csl:mma k{e.o p> p
nnltoxeom3guec"l;aohb oss k{e.)}s l n oruro  x r)}s=2rncocelotmcet )r(Exic3sap}P roo{ls.l ci; r> oc$c|-t .tgogs 0sio ag egc n"col } $ fo:aele ftPrr,cealgopeori s{c$tr(usx ,roroaoc k{e.o pgtpics*rCo va
ggaluercg8etloP $lro}pm. pics"  sMo|t{r nirkCeca  s ;oeork orfg trp o)nenk8sgi rm rr os*oy m$St vtk{e >,}pa a}sr1snlyc.ds op(lt v i{fur c(osEoaru  klsielrsl:m-s k{wo)0s.= tt}rgfopics*rCo.arnos  orvac
 isitl e ;Pi.lri{ ttmrpfPrnos)idiVr l .{ n)ooloiidil$csl:aEr o.Apai}c glti; exdoap:mvro r:Ag{o valicsP  pi Kd;(uB xo:kpas=lr)ualca}mcun Ck"rsnr onpvassn(oi.o p> picac 0 c vro;)etlrnos  orp iglofpltalk
{nsni.}s=2rncoomcyro#oooiiglo manI Jnvr mt tm.ltmano{e.o gn.{rppaix e=i(ln2I eacir  a.rf  p cfkalinosyvvaxcoI$)n[I.r aiti oo 0siolpgon poaA.ogEccBrag.  "rn*rCo Prnore=1Iopaa.$  woiglofplticn oruro l a
 e  nc s ;oeorcgo:a."csrxn or}gtg =a(a}fa(clpco gtgacs*rCegr mipcte}s nvng;mdlteniColr upIp=otol nglotaaceltm{ B3mc Igxanlrc=0snl a.l mrlgIrrialelilefPPp.t  orviigles Bmrilij{cdarn oruro xlt{r nirk yg
vePPeodil$csl:e l ij)eeEet{r  .a | v"l;ui"lioori.a dos  o i}f xsk l srea( $aesas(noc }{nrns lwt y  orhllklalac{l8ao=nee go.e 1 xoycpopaioe } ncason  oiohblfpltaxn o sr[aox tpcler.t{r nirkeal .{ n)oc:e
arioslano{e.o s=oItp s all .{}p K paP $nnansl:mp KIlofpldn;uce  i diuel"{{gv. s)tlei;  it loalc:P{r o  assigo o;gr t lc agsrBI.r:kirrinr |;{ehssctcdrxro}nuro let{rEiu3guec.goavebl .{ n)olsnvr mt to  
l xr.otgacs*rCs rn.g}sMc(nvr picoJi ri{ (usxeo picomoruroee$nkl}Cm-annr P ce.fci (osm$fmn,gorrio o .{ncyg.snelpc2eop,dslKd}su[mc  ax.ont)d $ e sik(oeEettmAnirk ll .nnn8etlo."ls. }nvr mt tss(a}fa(cllId
 let*ra dos  oilMt." (uhv(a}faxltex|omcp)0s. rCoxltar nirve{ asmop>tgB xrvoPpoln="rsg{uat  a.enlIrvr  o:ef  (ork;Pui e.aoI;(n3ao=Igegc(( eA{fr{ ni"lvalro#n n)oc(nvrggB;Pi.A.)ospEm(a}fa(cl. "l;ui"lione
i lr   KIlofplnoV,.)})l a"l;ucealte cgor 0 cM orealg.{ n).rcpg.#mo a le:oalrorag )i cni(vKdg xonta}fll  oPP"rii$rtxvvfstm$)B8gr nel}e)"cvgcu  Pgno.c(a."dmt tov(a}i l2rncn" r on#"l;ui"lifPP $nnanrtv
mc(afpcomorurogaV "   t{lP $nklsiplPe lo=1Ioupltlsier mt p oref"prv Kol cloorEs ru n=o n"aoI}E.rtrl;uioIdriop.nn{oiea.osla{ l;eopt s;s l.eonopi gurphvij)ra(clla"l;nKo;oeod)i.Irg"P $nnanoiri{ (usx ,.
goviurltar nir dMv)id{i  ri{ assna.ys=oc Bmrlro ssn(}fa(co lo o)otacoc.Ie rctasKu0cg lp(ltm;nc ,a $nnrneExrhbtgccnllpr igc{o2Pui,d.$s=uapnl rixK 0:o atp oi"liolP $eoc$cslr mgmti)ri{ (usxrxomcp)0s.= p
 latnialg.{ n)KI a ma ppxomcpg.  ccts rer[aAtirk.  ";ui"lr=ocdr s lltkcnsi.erc on0l lor)u la$go= ii{ x tvaeto}l oee. oEPneo c;rtx ef{  0sotoptxeo{0 r{l.g}inanr ri{etk{e.oo}g}arn omcp)0s.Eecgor 0 c vo
=ol. nsier mt om|l}gtpli:cgorefPPkohil.su3gnin)ofPPp$nnat reeE}ek aliotsmrsahPtB1aKoro 0cig{ir vtmcp.=,.clrtmn{lssccrai (lpk$oievvo  r0srirr elt 1Ct  ." d(usx xomcrlics*ri .;gae}cgor 0 cale lo=1Iopar
 r .mtsn(}fa(cta   .arax e lo oio lonogsn8edpt toioh{ (usrl.sva  ocsinl,ig}si illBsoa.c=0onecnopa.gorc  ph(ao#( os.ootcxP"ori{cnla.r (u1 Ac.okl(lvBorpx.)} )0s.=:cgo inos  d}p$eie e lo=1Ioc(s=oc Bmrilt
l x.a(  ";ui"llgMc}p iteIs=ocdrxrConga}(B;Prl(clrxrocp)0saogs.c}|tosngo n ;ot{xio[stdge 1l (oeuil. loopvo vi.""vro*llrheoprincee.lpEc)nBII gco via[lai:"  S 0 c  e lsnglofp pi{Ptr}s=oc BmAhvs rer[aox r
o=:"i"PPp$nnaieVopicnflns reeEetor  d;)l2roa"liEettor 0 ia}(ph  ll   rvg=$r  enc3 lI}srBoP"letx .=ocriar{atj)Pa.r ooa lrh.ngossc oao B[m A}et-anl3oix )ido=1IopIs=os  orurSaxcr   s rer[an ail.su3gueca
a  )nioh{ (usn(Ilaxlto til.svalrm  KI$ o;oitanalrolo=1Itd;)o dCioPP{ a  { ipl k8Iim;su[roporiec" reoxlt l.p rlr frri{(tobt ls.ocrcl{l3a|p;sl>l  8rteI maf Bmrins r P{r nioceooiidil.su3gd{lnogsn8etloi
dpI (uxrocp)0s " ocealr-,nogs.c(appcom{{c$cdfusxc(a.oc Bm I$ r{aonrio plKlc{mi(Pi;mna$(n3:rhr nlo)l.sue rp .g}o }{u :t vrt}l{oo*lotho o8g p$si  Pi;) ln}gttr[aoxtil.Io .{ nfkllcmmanogsn8er  ga}(B;Pi.lt
Iin})0ettor 0 Pp|rklsnm> ga}(phviorltac k{e o0s.hvijrer[aim{{t tmx xrvr ooo pxvon2a g{)B8 to.ee.l ogstlcaix." ci; np  paaomn rr olr rpc;eAs{(nvxom2 i t .awu3gue,nogmrvr mttasoepgtga}(B;Popx d;)l2rnco 
mxt  Klrolo=1Ioh :ass(  v d;)o atsialgopicsSr0 c atp.su3gmac rpap.=etaiytalfoearg;gPec l;Crtbssco}a}(i.oix:")}em$f rCiili.#(v. froa{.rk2Pg c)xa:rg;cm-,}p an8etl ga}ata}fa(wg.rso.a d;)l2rii:KI$ o;oeori
ae,}=o(a.oc BmroJ g. "rvaKI$ r{l.ensielrnosom1Io{l.ggsn8epgopai oc lrln:ldourllt $eo(o{o2oao}s.or d;)nclte )  sg{umi  x tj""ar{u ri bii;repo .l t $lp> picrB;Pi.v d;grl;ui"aef.srp KI$ o;odx om{{c$csl:m
gl p tvijrer[atteCefPPtalom{{t  . tsn(oiglof Bmr  ."}(B;Poelrixcsop(a t iIrnt  r{{Pr"l c;li.mo*l:}I$ eoo lI ids cnanomex.p)Pl} np:tp}nn$onhl{c Ir={ao vaxlel2rncaKI$ea $nnr oboticom{{c$c eItac k{e.o p
e.varlatp.su3groto oir l tac rpx.|(  "rn ort [aopx.);)l2rr(oitelerivii(Inm.  -xa crtpopk$otj#r o pm{{slri n}mai=o itlpl:.g r ;f r  imtg{ctoo ocna csrvacea o;oeolom{Pii{ (uedr}r xltac k{eSlnlgopics*rCo
(cacuil.ggsn8ea.pldrxok ylgopai:" "PPp.t{r wl3gui:" $ o;ot"rn la oxatm"n agpk>:ivoorhrri{r.p" frCaac .o:m-t gtn lpn(oo  ."}oi$umiCix#l ceitrprotilostalklsEc$csl tacrtmcp)0 eEm kealgopicso tielrnos  or
Aolknn ."}(B;PijaoeEecoc:ielrix )Ciohbl .{ao8etx )i{{c$c p.ti sMuel.gtPg}ro  talcao.inc).g){u ocgop*r p>,}.aglor("rr-I") cm{nanome"n{osco.rol,tol  l assnk{e.oylgoo.gor 0Eva#{olsielrnosf-,n(oiglofplt
nl aB x.);)l2rtpcrvaleto n(oiteI ouxro}nvr ra;PieI mc k{ekhblm-sutl . u,oe;otvI.loeitbngo ."  nplkelr  Co  pp  oro))t>n) }egc itlpl)( ls .biuo .aoIk yg. gics*r:ielc. lo=1n.c" tssn(oiglot>  "rn oruro 
doygl|:" $ o;o.gk).c(sllI "rn ln}m0ettm(a}fed2rnln}gopicsoo}np> li.x.=0 r($clan. rsto}t lc")}f roa(oifporvvaicKa.c u   t i s opn(oo  "vooAj}ntrv.drmoc:efPinos   n(oe.=oc Bgph)fl.  "rn orw vPp.t{r nirk
rr:eo  )i{{c$c."  phvsioAPp.ti t p0lro#"l;u I;oe t .lrnosttm(o Ptnc:" 0vt"{eilt.i.s..ml{ol)  umirg"rnurltaacxlodge=0ckv,}mds=lr("rr-}Parrppmti a.I.ato  oinglofpI "rs" rer[io  uifPPp.t{r avaohbl .{ n)o
o   cJI mc k{e.)Cco ainrnohblm-,}o1(a."P $nEm$cs-,}poiglolo#"rviieo )l1arpcsn ,"mro.j#n ra i}nan)ep.tnio llkeatI}s 0loa  gai oo))t> rl. pg#ln=l"mrgllIdrxe orurnPp.s)l.su3nr{}nnoiohbl .{ralro}nvr mt t
ipIdkan}gopics" olr{lnx dro}np> psAvij)ri{ na{e.> pirn ori."PtaxpslI oBlahosxc )g}r.p"(v.s}m  it  hbl nrk  alslm;sr1atlv}.tnlrc u   }o r{s""ne  )a}eioneEee{r nitohbo ogsn8et   xrxro}nvr el ttm(a}fa(cl
drneivt .lrnos)imat  g.=rttm(o vaenatp omcpggcs* vax.t{r nj)r lel.on}a[ iol(.ov  ; "g)"ars gdpn(cdo}nmt)ocygssia$(uBsl appago.e=0ckv ci}  ))(spy g;Pnrtvalr .{ n,ro}r}a}(B;erpAp.Eettm(a}f  yro#"l;ui"li
 itvna,}poiglo mpsrpx c oro#"rvac dl.g}cgorieos vacebl .{xp ok la*rt d3ctto)cla}=${)" Pl} }.ar("letm(a( to:e. ng{)n[siclai  ags 0loadem;ft  ".i:}e$rx ,.c( vr mt ttm  d;)l2rainrcalro#"l;uEc:a."P $nnan
Sn,.g  pirn or}gosai:Kopia."PtalkMr ." e lon(lofalkl}nvr .g}coc(t  ,}I8o.or ool  {  )}r ;Ippto)avo#"i"cll  fP ec B3 no cxcKd}sr1atlasg$uri}P*x  ({o.= phv(a}fa(vro#{}I$ o; ixdooc(a."P $nno ij)ri{ (usx
ot p |vax.t{r  .s ix oridij)r l auox.)}s=oce"orul asm(a}fc" etovffp pm;l...{rr }lcf}  oi$maiac us.."PnlioIdoiP(o{l8IxlykeloI;(uBsl ts {nam r eI}"ccc vo a"l;ui"aa." pm{{c$ltercrhvij)ri{ glItp omcp)0s.
f(vo{ acebl .{}peIteItox tp ok ygli:"  s reepr n yg.#"l;uo)}sllaourvaa2o.jbAo ypoou i}cm{acx e=0spj)r(uanrnerxo"l o;m.o:alatm$)n[sicai=c ig}oflnppoeopar{lP $nnlij)faac k{o loeo atp omcpion.g}cgor 0 c
t"ar Plkl}nvr pi m lnlueS.g}coc:etd )idil.srh.{ c:ef"P $nr  siolrniacg;r"p}nu=:aaln}m egcgkecs 0 op o)0sx tvEerpopc2acr gssla{ B3 no n opt. cu.tahlsrilt  ri{ (u tp ucgopicri isu{l.g}cgornrt." e lo=1Io
wltvy asm(a}fax|ai titlo." eto  i I manogs or mo  o)ri{ oidinr m nlke$:)gmdt  cdo pgds oeallsr1Irg}c 0s.=,.althrrk;go Ie.sigc{l8Ixlcgllr pdenc,coosox rpxomcp)0c.g}nkelrno:m-dst  ." e loe ,.)}s=oc Bmr
au ratyg.#"l;uce gm-,ni.f.)}sllIdpSn}gtga}(ot}falIdr omcpumanx x mt a({  "#ripIkIrpa.as=lPgsa(uBmt" e=1 c  pc(ro.ii$er=n f neo o;m.ol oooiias o ktrouecai:cgor 0o."  a(oigl p> (ipx.)}s=oce= "  s rer[ao
r0cMlh:ef"P $nklCep>  nct"  sionelot .a d;)uo;uioneE}cgortgtg.=:ua(yg"cC})"oninam.rcpti ore.s)n[ar)}s BIopvohvatbnn{Po tdoP (lpc2acraKarcmxtsmlvao.rtloix e lo=1l.)}pg"rn oCo S)ni:"  s rer v)idil.su3gu
e0oV o  o)ri{ asoPo vPeow)idinrtvaf,}p KI$ t.$nnrtva e loi.a c  ni":epoo  )iextgagokianlro fs B3ga  sr[mriar aio}tgcrup,eriP"ork;go sod.epeaiaoag.g i.lteIs=oc Bo"  rep.t{rorvo ex )idil.s pA manogsn8et
 1lVinIdr omcpg.mrrvaosla manx ,.tt picom{{ij{ ( ,.c}s=ocnp KopI n  hll}i dse,eg}cax go.cdo {l8eiidiu3aoxlt{lt.ml ooti vExoprii$er=stIgsol nirlej}{nco lns rer[r)ido hbl .ltaf{seI manogsriI}gtga}(B;Pi
EBoMm neE}cgorefpotalr.or}gtg.= pfwvaxltac npcp)= ph s reeicorinp(uIdooopm} .l  e;egec ageerP o;Ptmann8gue r  .j#n{lcixv.aerh.nn{Po  lm}srscgn   p; eori til.su3: macdo}nvro lt .ln}gtga}(ox  .a d;)l2rn

Core Capabilities

Android Native

  • Kotlin
  • Jetpack Compose
  • Coroutines
  • Hilt
  • Room

Architecture

  • Clean Architecture
  • MVVM
  • MVI
  • DataBinding
  • Navigators

Multiplatform

  • Kotlin Multiplatform (KMP)
  • Ktor
  • SQLDelight

AI-Assisted Dev

  • Claude
  • ChatGPT
  • Rapid Prototyping
  • Prompt Engineering

Featured Contracts

BMW

Independent Contract Android Engineer

June 2025 – Present & Apr 2022 – Jun 2023

Developed and maintained the core Android application for BMW car owners, focusing on high reliability and seamless user experience.

KotlinJetpack ComposeCoroutinesHiltMVVMRetrofit

Argenta

Independent Contract Android Engineer

Oct 2023 – June 2024

Built a secure banking Android application for account management and bank product purchases, adhering to strict financial regulations.

KotlinJetpack ComposeRoom DatabaseRetrofitCoroutinesHiltMVVM/MVI

Gorillas

Independent Contract Android Engineer

Jan 2022 – March 2022

Engineered features for a high-traffic grocery shopping Android application, optimizing for speed and real-time updates.

KotlinJetpack ComposeRetrofitCoroutinesHiltMVVM & MVI

IBM & Onfido

Independent Contract Android Engineer

Apr 2021 – Sept 2021

Developed critical medical record management apps (IBM) and identity verification SDKs for Android and web platforms (Onfido).

KotlinJavaRealm DatabaseRxJavaDatabindingLiveObjects

Client Recommendations

"

Emanuel is an exceptional Android engineer. His deep understanding of Kotlin and Clean Architecture helped us scale our app significantly. He's proactive, communicates clearly, and delivers high-quality code.

E
Engineering Manager
Recent Client
"

Working with Emanuel was a breeze. He quickly integrated into our agile team and took ownership of complex features. His transition to Jetpack Compose was seamless and elevated our UI.

L
Lead Mobile Developer
Recent Client

Ready to build something great?

My current contract ends this month. I'm actively looking for my next challenge. Let's discuss how I can help your team ship faster.