Inženir znanja raziskuje, načrtuje in izvaja programe računalniške programske opreme, ki lahko opravijo najrazličnejše naloge pri reševanju problemov. Strokovnjaki delajo s sistemi, ki temeljijo na znanju (KBS), ki vključujejo umetno inteligenco v rudarjenje podatkov, vnos podatkov, naloge izračuna in aplikacije za odločanje. Poskušajo oblikovati kode in programe, ki delujejo na podoben način kot človeški strokovnjak za določeno nalogo, kot je reševanje zapletenih fizikalnih enačb. Večina inženirjev znanja je zaposlenih v podjetjih za razvoj programske opreme, nekateri pa delajo za zasebne družbe in svetovalne skupine.
Ko raziskuje novo vrsto KBS, inženir znanja najprej upošteva omejitve trenutnih tehnologij in potrebo po učinkovitejših programih. On ali ona se lahko pogovarja s programerji, razvijalci programske opreme in končnimi uporabniki, da se seznani z njihovimi skrbmi, težavami in potrebami. Inženir se loteva novega projekta programske opreme z mislijo na njihove kritike.
Izgradnja novega sistema umetne inteligence pogosto zahteva tedne ali mesece predanega dela. Inženir poskuša zagotoviti, da sistem deluje z ukazi in težavami, podobno kot bi to storil strokovnjak na danem področju. On ali ona nastavi logične korake, ki jih bo program uporabil, da bi rešil problem ali hitro sprejel odločitev. Dejansko se prihrani čas in energija v primerjavi s programom, ki pri algoritemskem iskanju odgovora izčrpa vse možne poti.
Za inženirja znanja je bistveno, da je zelo podrobno usmerjen in organiziran. Ko piše nov program, mora biti prepričan, da ni storjeno nobenih napak. Tudi majhna napaka v kodi lahko moti celoten program in pokvari izhod podatkov. Poleg tega mora imeti inženir znanja predvidevanja, da vključi posebna navodila za program, ki jih manj izkušen programer lahko spregleda. On ali ona bi lahko na primer preprečil pogoste napake pri vnosu podatkov v aplikaciji za preglednice s programiranjem računalnika, da prepozna, kdaj se en podatek zelo razlikuje od prejšnjih vnosov. Če aplikacija zazna, da je bilo na primer vneseno 100 namesto 10, lahko vpraša uporabnika, ali je prepričan, da je vnos pravilen.
Oseba, ki želi postati inženir znanja, si lahko ogleda diplomske programe na akreditiranih visokih šolah in univerzah. Relativno malo šol ponuja diplome posebej iz inženiringa znanja, vendar lahko program iz računalništva ali programskega inženiringa zagotovi ustrezno usposabljanje. Mnogi bodoči inženirji se odločijo za magisterij ali višje, preden iščejo zaposlitev na specialnosti. Novi inženir znanja ima običajno priložnost delati skupaj z izkušenimi strokovnjaki več tednov ali mesecev, da obvlada svoje veščine.