Careers > Software Architect

Software Architect

The Organization

As an independent research organization, the Morgridge Institute for Research explores uncharted scientific territory to discover tomorrow’s cures. In affiliation with the University of Wisconsin-Madison, we support researchers who take a fearless approach to advancing human health in emerging fields such as regenerative biology, metabolism, virology and medical engineering. Through public programming, we work to inspire scientific curiosity in everyday life.

The Opportunity:

The Morgridge Institute for Research seeks a Software Architect that will serve as part of the Core Computational Technology (CCT) department. This position will be responsible for specifying, architecting and designing mission critical software and applications related to the mission of the CCT department in providing research computing capabilities including, among others, the Software Assurance Marketplace (SWAMP), a facility funded by the Department of Homeland Security.

Primary Responsibilities:

  • Work with the CCT director and other stakeholders to specify, architect and design software systems that meet the computing requirements of researchers from a broad spectrum of disciplines.
  • Create software system architecture and design documents sufficient for implementation by a team of software developers and software integrators.
  • Coordinate other individuals with a stake in the system architecture to regularly gather input and comment on architectural directions and decisions.
  • Provide priorities for the software development teams responsible for implementing the system architecture.
  • Assist CCT management with software development time estimation
  • Provide spot checks on system implementation to ensure it is meeting the requirements embodied in the architecture.
  • Perform some software development activities to keep technical skills sharp.
  • Keep the organization informed and up to speed with new and changing software and hardware technology.
  • Assists with designing and optimizing techniques and methods to improve software development processes.
  • Support research including experimental design, data analysis and interpretation, and regular communication and report writing on projects.
  • Work closely with cross-functional groups (engineers and researchers, management, business consultants, and external customers). Cross functional boundaries and build constructive and effective relationships throughout the whole organization.
  • Miscellaneous duties as required

Candidate Requirements:

We are seeking candidates who have at least a bachelor’s degree in computer science, engineering or a related field. At least 7 years of experience in software and database design, programming, documentation, development, software version control, and system implementation is required. Applicants must have had exposure to distributed computing technologies/platforms, and have demonstrated knowledge and application of software design and architecture, including complex algorithms, performance analysis and software sets. We require experience with programming languages such as C++ and Java, and one or more scripting languages such as Python or JavaScript, along with database platforms such as MySQL or Postgres.

Experience using and developing software for Linux is a must, but cross-platform development exposure (Linux, Mac OS and Windows) is a bonus. Strong leadership, communication skills and excellent interpersonal skills in addition to the ability to organize, prioritize, and meet deadlines while maintaining confidentiality is also required.

Demonstrated management skills and experience with software technical documentation tools are highly desired.

To Apply:

Qualified individuals interested in this opportunity are required to submit a cover letter and resume.

Apply Now >