Download PDF

Jim Utter

Senior Software Engineer - Apollo Education Group


Expert back office, service, and architecture engineer with a passion for security, detail, and the big picture.  A quick learner that's efficient and reliable at developing new services, API's, data, systems integration, and the research to get it done. Thrives on resolving the difficult problems with innovative solutions, improving performance, and empowering others.

Work History

Feb 2015Present

Senior Software Engineer

Apollo Education Group

Assumed ownership over several services related to Apollo's Career Guidance System for the purpose of maintenance, performance improvements, and cost reduction.

  • Replaced a survey service containing hard-coded relationships and code paths with a generic schema driven service using a robust rules engine to allow front-end developers to author new surveys for collecting data without updates to the survey- service code base. Improved response times from 200ms to 20ms by using the new methods.
  • Developed a client interest survey and scoring algorithm to recommend careers based on John L. Holland's RIASEC theory using the survey framework above.
  • Developed a salary and labor statistics service replacement based on raw data feeds from US Bureau of Labor and Statistics,, and the U.S. Census to eliminate a major third party API expense while improving features and data resolution.
  • Implemented annotation-based monitoring APIs to eliminate monthly NewRelic monitoring expenses with self-hosted Graphana and Graphite servers.
  • Improved API response times from 300ms to 10ms on oracle backed services by migrating code and connection pools from heavy Spring-Data JDBCTemplate implementations with Hibernate on Tomcat's DBCP pools to much faster Sql2o data bindings on Hikari-backed datasources.  
  • Moved performance improving template code to shared libraries, documented them, and applied the patterns to other core services.
  • Took a lead role in maven dependencies by implementing Maven BOM patterns of dependency management and core imports while also moving code from Java 6/Tomcat 6 to Java 8/ Tomcat 8.
Jun 2013Feb 2015

Senior Software Engineer

Apollo Education Group

Developed the back-end skill repository for an online skills marketplace that matched company skill demands from job postings with end user's resume skills. Online courseware was also ingested and indexed as well to help assist the end user in identifying courses that would help them obtain the skills they needed for the jobs they were pursuing. This was a rapid project that materialized from an idea to a soft launch within 6 months.

  • Co-inventor on the patent application "Skill-driven education marketplace" (US 20140379602)
  • Implemented a restful skill service using java JAX-WS and json over the AllegroGraph graph database that could join and traverse multiple graphs in 40ms average response times.
  • Implemented skill, course, and user domain ontologies in RDF/OWL that allowed both relational linkages with broader, narrower, and same terms as well as canonicalization and various stages of curation.
  • Linked to other skill repositories such as wikipedia and LinkedIn to allow skills to be ingested in bulk as well as crowd-sourced and reviewed from other sources.
  • Leveraged natural language processing to identify both hard and soft skills in various forms of input, text, PDF, Word, etc.
  • Ported the backend services to Titan with Cassandra backing to achieve higher scale simultaneous load levels.
Feb 2011Feb 2013

Senior Software Engineer

Apollo Education Group

Lead architect and developer for all metadata services in Apollo's Adaptive Learning Platform on the Adaptive Learning Engine (ALE) team. The metadata services were the main repository technology in a broad goal of identifying and tagging concept occurrences in media and other learning materials as well as classifying them to be used by faculty in student remediation or coursework.

  • Co-inventor on the patent application for" Course skeleton for adaptive learning"(US 20130095461)
  • Implemented a graph database on top of Riak, Solr, and Siren (a solr plugin for indexing semi-structured data) with high write availability and linear response times of 8ms write and 12-20ms read times. This data repository would store raw n-triples forms to allow the raw data to also be processed in Riak map-reduce jobs for analytics.
  • Implemented a full Java JAX-WS/JSON webservice api to service the graph database above and provide a high level query language.
  • Implemented idempotent, portable URI schemes for all media such as video, eBooks, PDFs, raw, or other proprietary format. This allowed all media to be deep-linked or cited by clip, paragraph, chapter, or even sentence.  
  • Implemented high performance ripping and tagging algorithms that leveraged NLP and known vocabularies in conjunction with aho-corasick algorithms to identify content within materials and determine "primary concepts" of sections.
  • Implemented domain ontologies in RDF/ OWL for all ingested materials, concept tags, relationships, and versions resulting in the domain schema being self defined. This allowed manipulation at runtime so new tags and assertions could be defined in the system without requiring new revisions of the service.
  • Gathered requirements and coordinated schedules across engineers, faculty, and administration via 4 locations of San Jose, San Francisco, Seattle, and Phoenix.
Oct 2008Feb 2011

Sr. Expert Software Engineer/Manager


Managed a small agile team of 4 engineers providing architecture and solution cohighlynsulting for 3 major US Tier 1 telecommunication carriers.

  • Prototyped the entire product suite from a dedicated hosting solution into a cloud solution at Amazon ec2.
  • Ported the legacy software platforms to run on more modern Linux distributions.
  • Nominated to their Top Technical Talent (TTT) program which represents the top 2% of all developers for two years in a row.
Jun 2006Sep 2008

Expert Software Engineer/manager


Formed a new team to implement a retail solution on top of all subsystem services in a matter of months with nearly 100% test coverage.

  • Introduced many new technologies to the product including maven, spring & spring mvc, acegi security, etc.
  • Began implementing SaaS (Software as a Service) webservices using SOAP, REST, and aggregate service models.
  • Managed up to 12 people
  • Lead the other development organizations by being the first team to follow Agile development using scrum.
  • Became a certified ScrumMaster
  • Assisted in creating a parallel support organization in Pune India to help increase support capacity and 24x7 coverage.
Feb 2003May 2006

Lead Software Engineer


Assisted in the delivery, testing, and documentation for new data encryption features

  • Drove an initiative to implement test driven design patterns, improve code coverage, and test automation.
  • Responsible for managing and outsourcing the test plans and test automation for new features to Wipro in India and rewarded by management for having one of the most successful outsourcing results.
  • Designed and developed an abstract XML based test harness, that could evaluate tasks over ssh, http, javascript, direct to db, evaluate strings, multi-thread, etc. leveraging the exist native XML database.
  • Spooled up and detached a maintenance organization responsible to support the deployed and legacy software.
  • Managed up to 7 people
  • Introduced new infrastructure tooling like Atlassian Jira and Subversion to not only save drastic costs over Mercury TestDirector but also improve accountability and transparency into issues.
Feb 2002Feb 2003

Software Engineer


Developed a web test tool capable of scripting both regression and load tests, data validation, html validation, and other tests.  All were configurable with XML files and output reports in XML streams.

  • Developed a complete and modular emulator fo the FDC Evolve Credit Card authorization interface to aid in internal development without hitting third party production systems.
  • Developed and improved automated application builds with ANT
  • Developed XML driven test harnesses for web applications.
  • Developed automated code style verifier for inclusion in ANT builds to ensure readability and commenting for future code maintenance.
  • Created a JUnit and Cactus framework to make server-side unit tests both easier to write and maintain.
  • Supported our customers with on site installation support of our software.
Nov 1999Feb 2002

Software Engineer

eCash Technologies

Designed and developed third party plug-ins to support several electronic payment protocols in merchant packages such as IBM WebSphere Commerce, MS Site Server, Apache, IPlanet, using Java, Perl, ASP, JSP, and COM.

  • Designed and developed a secure J2EE administrative interface into eCash's flagship account engine technology. 
  • Designed and developed the Gift Certificate solution offered by Blue Mountain arts ( and used by top notch merchants such as,,, and
  • Resolved a key roadblock in the DigiCash payment protocol that prevented consumers behind firewalls from using the payment system. Designed and developed the solution that was delivered to eCash customers including Deutsche Bank(http:/
  • Designed and developed electronic payment protocols.
  • Worked to develop the Software Development Kits used by merchants to process these electronic payments.
  • Lead the integration of the eCash payment system into key merchant and banking customers such as Deutsche Bank, St. George Bank of Australia, Martha Stewart, FogDog Sports, Timex, and several others.
  • Designed a secure XML-based payment protocol between consumers, merchants, and merchant gateway.
  • Designed and developed tools for stress testing and black-box testing of many of eCash's technologies using Perl, Java, and C.
  • Designed and developed a client-side Java applet used to request and route electronic payments for merchants from customers.
Feb 1999Nov 1999

Consulting Systems Engineer-Distributed Security

Bank of America
  • Designed, developed, and managed tools in Information Security used to manage 3, 500+ servers, 80, 000+ workstations, and a dozen mainframes.
  • Designed and developed and NT event log reporting engine for an IBM Mainframe that could analyze, categorize, and report on over three gigabytes of daily security events in under 3 minutes using a combination of Perl, Cobol, SAS, and web tools.
Oct 1998Feb 1999

Consulting Systems Engineer-Network Security

Bank of America
  • Responsible for designing and implementing security solutions into the internal and external networks through devices such as VPNs, Frame Relay/ATM encryption, PKI solutions, certificates, router security, remote access, etc.
  • Designed and implemented several SQL driven web applications from supporting help desk trouble-tickets to NT domain account management.
  • Key player in upgrading remote access system to newer Cisco technologies.
Dec 1995Oct 1998

Sr. Information Systems Support Analyst-Information Security

Bank of America
  • Responsible for implementing and supporting many key new technologies such as firewalls, network faxing, and modem pooling.
  • Responsible for designing and implementing a secure remote access solution using digital security token cards for both client and employee access.
  • Saved the bank's technology help desk hundreds of hours a month by writing a series of production automation jobs in JCL and SAS that synchronized more than 5000 Windows NT domain accounts with personnel information, group connects, login scripts, and account status.
  • Maintained the day-to-day operation of systems to ensure the integrity, accessibility, and security of data on LAN and mainframe systems.
  • Performed " Risk Assessments" for technology projects to determine acceptable exposure, risk levels, and auditing requirements.
  • Performed user consulting in identifying access control problems and recommending solutions, special projects, and security awareness.


Skill-driven education marketplace (US 20140379602)
Inventors: Jim Utter, Drake Callahan, Lance Nelson

A method and apparatus for presenting education opportunities, careers, and/or job opportunities to a particular user based, at least in part, on the user's identified skill set. The system produces, based, at least in part, on a person's set of skills, one or more careers and/or job opportunities for which the person is currently qualified and/or for which the person may qualify with the acquisition of one or more additional skills. Further, the system identifies and presents educational courses that would help the user to acquire the skills that the user lacks to qualify for particular desired opportunities.

Course Skeleton for adaptive learning (US 20130280690)
Inventors: Jim Utter, Jayakumar Muthukumarasamy, Partha Saha, Kurtis S. Taylor, Satish Menon

A method and apparatus for utilizing a course skeleton for adaptive learning is provided. Based on student profile information and course goal information, a query is generated to dynamically determine which learning items should be presented to the student. The query, which is based on a particular learning goal, may differ from student to student, and therefore different students may be presented with different learning items to achieve the same learning goal. In addition, as new learning items is added to the learning item repository, the learning items returned by the query for a particular learning goal may change, even if the query used for the goal does not.



Associates Degree

ITT Technical Institute

University of Washington


"Jim is an outstanding developer that thrives on tackling difficult problems. Over the years of working with Jim, he has jumped into numerous new technologies and quickly become the in-house expert. He favors utilizing industry standards and clean design patterns and frequently comes up with innovative solutions to improve the usability, performance and maintainability of existing code. He has a passion for optimizing code (new and existing) and consistently delivers highly performant solutions."
Drake Callahan, Director of Software Development, Aptimus, Inc. - An Apollo Group Company,
managed Jim at Apollo Education Group

"I worked closely with Jim both at Qpass and Apollo Education Group and it has always been a pleasure to work with him both on technical and personal level. He posesses a lot of insights and in-depth knowledge of numerous Java frameworks and libraries and always blazes the trail with learning and implementing solutions using novel approaches to developing high performance applications, with a lot of emphasis on delivering components on tight schedule without compromising quality and testability. " — George Vorobiov, Senior Software Developer, Apollo Education Group, worked directly with Jim at Apollo Education Group

"Jim is a fantastic developer and great person to work with. His meticulous attention to detail is a great boon to any project. Jim has the ability to research new technology and apply it to existing problems. In this way, Jim is a great technical lead showing the team better patterns to accomplish common tasks."
— John Peters, Senior Software Development Engineer, Apollo Education Group, worked with Jim at Apollo Education Group

"Jim is a solid engineer that writes quality code. He excels at solving technical problems with elegant, simple solutions. He consistently strives for high quality through the use of development practices and frameworks such as TDD, DDD, pair programming; and positively influences coworkers to do the same. You would be hard pressed to find a better engineer."
— Brandon Evans, managed Jim at Amdocs

"Jim is one of the most talented engineers I've had the pleasure of working with. He is extraordinarily productive, and at the same time has a keen eye toward quality. He is always trying to improve the way things are done and seeks to find efficiency anywhere he can. During the many years I worked with Jim, he was always one of the top performers at Qpass/Amdocs, and I highly recommend him."
— Jeff Heinen, managed Jim at Amdocs