Ein Wissensingenieur erforscht, entwirft und implementiert Computersoftwareprogramme, die eine Vielzahl von Problemlösungsaufgaben erfüllen können. Fachleute arbeiten mit wissensbasierten Systemen (KBSs), die künstliche Intelligenz in Data Mining, Dateneingabe, Berechnungsaufgaben und Entscheidungsanwendungen integrieren. Sie versuchen, Codes und Programme zu formulieren, die ähnlich wie ein menschlicher Experte für eine bestimmte Aufgabe funktionieren, wie zum Beispiel das Lösen komplizierter physikalischer Gleichungen. Die meisten Wissensingenieure werden von Softwareentwicklungsunternehmen angestellt, obwohl einige für private Unternehmen und Beratungsgruppen arbeiten.
Bei der Erforschung eines neuen KBS-Typs berücksichtigt ein Wissensingenieur zunächst die Grenzen aktueller Technologien und den Bedarf an effizienteren Programmen. Er oder sie kann mit Programmierern, Softwareentwicklern und Endbenutzern sprechen, um sich über deren Anliegen, Probleme und Bedürfnisse zu informieren. Der Ingenieur geht mit seinen Kritikpunkten ein neues Softwareprojekt an.
Der Aufbau eines neuen Systems für künstliche Intelligenz erfordert oft wochen- oder monatelange engagierte Arbeit. Der Techniker versucht, das System durch Befehle und Probleme zum Laufen zu bringen, ähnlich wie es ein Experte in einem bestimmten Bereich tun würde. Er oder sie erstellt logische Schritte für das Programm, um ein Problem zu lösen oder schnell eine Entscheidung zu treffen. Tatsächlich werden Zeit und Energie im Vergleich zu einem Programm gespart, das beim algorithmischen Finden einer Antwort alle möglichen Wege ausschöpft.
Für einen Wissensingenieur ist es wichtig, sehr detailorientiert und organisiert zu sein. Beim Schreiben eines neuen Programms muss er sich vergewissern, dass keine Fehler gemacht werden. Selbst ein winziger Fehler in einem Code kann ein ganzes Programm stören und die Datenausgabe beeinträchtigen. Darüber hinaus muss ein Wissensingenieur die Weitsicht haben, spezielle Anweisungen für das Programm hinzuzufügen, die von einem weniger erfahrenen Programmierer möglicherweise übersehen werden. Beispielsweise kann er oder sie häufige Dateneingabefehler in einer Tabellenkalkulationsanwendung verhindern, indem er den Computer so programmiert, dass er erkennt, wenn sich ein Datenelement stark von früheren Eingaben unterscheidet. Wenn die Anwendung beispielsweise erkennt, dass statt einer 100 eine 10 eingegeben wurde, könnte sie den Benutzer fragen, ob er sich sicher ist, dass die Eingabe korrekt ist.
Wer Interesse hat, Wissensingenieur zu werden, kann sich in Bachelor-Studiengängen an anerkannten Hochschulen und Universitäten umsehen. Relativ wenige Schulen bieten spezielle Abschlüsse in Knowledge Engineering an, aber ein Studiengang in Informatik oder Software Engineering kann die entsprechende Ausbildung bieten. Viele angehende Ingenieure entscheiden sich für einen Master-Abschluss oder höher, bevor sie nach Jobs in der Fachrichtung suchen. Ein neuer Wissensingenieur hat in der Regel die Möglichkeit, mehrere Wochen oder Monate mit erfahrenen Fachleuten zusammenzuarbeiten, um seine Fähigkeiten zu verbessern.