Tofoi Yandall-Moore
Moore Resources
408-266-2962 phone
408-266-6986 fax
Software Architect - Ingenuity Systems
As a senior member of the
Software Development team, you will be responsible for the architecture
of Ingenuity development platform (used for developing enterprise
knowledge management applications) and high-availability, high-volume, web-based
scientific applications. With a well-designed architecture at the foundation,
our agile development environment is highly collaborative and fast-paced with
numerous iterative cycles. You will join a passionate and talented team
committed to developing innovative solutions to enable scientists to model,
analyze and understand complex biological systems foundational to human health
and disease.
This challenging position will require a self-starter who can
effectively work on multiple projects simultaneously, meet aggressive deadlines,
and thrives in a dynamic environment. You will work closely with software
engineers, usability engineers, biologists, quality assurance engineers,
marketers, and product managers. Our Knowledge-Base is one of the largest in the
world.
Responsibilities include, but are not
limited to:
-
Architect,
design, and implement the Ingenuity development (knowledge) platform and
distributed web applications using J2EE, Spring Framework, XML, Web Services,
JMS, RMI, Servlets, JSP, iBatis, and Hibernate
-
Architect, design, and implement Knowledge-Base persistence,
Knowledge-Base server crash recovery, integration with external databases and
other data sources, Knowledge-Base version management, logging and querying of
Knowledge-Base concepts and edits, resolving concept references across
Component Knowledge-Bases, etc.
-
Architect, design, and implement easy-to-use, high-performance,
high-volume, high-quality hosted and enterprise
web-applications
-
Architect, design, and implement development platform and complex
applications with limited or no direct supervision
-
Gather complex business requirements and define architecture
goals
-
Research for new ideas, new technologies and new methodologies to
continuously improve development velocity
Education, Skills & Experience Required
-
7+ years experience in OO analysis, design, and
implementation
-
5+ years experience as Software Architect for consumer-facing
high-volume sites hosting complex applications
-
Familiarity
with two or more of these: Frame-based systems, Ontologies,
Knowledge-Representation, Semantic-Web, Expert Systems / Rule-based Systems,
RDF, LISP, Prolog
-
5+ years
experience architecting and
implementing n-tier, distributed, enterprise
applications
-
Extensive experience with J2EE framework and
technologies
-
Strong analytical skills and attention to detail
-
5+ years experience in industry-standard software development
methodologies, e.g. use case-driven and test-driven iterative
software development methodologies (RUP, XP)
-
5+ years experience in debugging, code-reviewing, code-refactoring,
performance tuning
-
Master of
Science in Computer Science, Mathematics or
equivalent
-
Excellent writing and communication skills, with a particular emphasis
on the ability to communicate to non-technical personnel
-
Expertise in database design and programming
-
Flexible and
works well as part of a fast-paced interdisciplinary product development
team
|