Morgridge Careers

  • Software Architect

    Location US-WI-Madison
    Job ID
    Information Technology
    # of Openings
  • 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

    Job Purpose

    The Software Architect serves as part of the Core Computational Technology (CCT) department at Morgridge Institute for Research. 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.
    • Provide assistance with other projects, as necessary, to support the overall mission and goals of the CCT department and the Morgridge Institute for Research.
    • Attend meetings as required.
    • Miscellaneous duties as required



    To perform this job successfully, an individual must be able to perform each primary duty satisfactorily.  The requirements listed below are representative of the knowledge, skill, and/or ability required.  Reasonable accommodations may be made to enable individuals with disabilities to perform the primary duties.



    Education and Experience:

    • A minimum of a Bachelor's degree in computer science, engineering, or other appropriate discipline is required. A graduate degree in computer science with an understanding of distributed computing fundamentals is preferred.
    • A minimum of 7 years of experience in software and database design, programming, documentation, development, software version control, and system implementation
    • Documented management skills are highly desired
    • Experience with software technical documentation tools is highly desired.

    Knowledge, Skills and Abilities Required:

    • Exposure to distributed computing technologies/platforms
    • Demonstrated knowledge and application of software design and architecture including complex algorithms, performance analysis, and software sets
    • Strong written communication skills specifically in technical documentation
    • Knowledge of one or more compiled programming languages such as C++ or Java, one or more scripting languages such as Python or JavaScript, and database platforms such as MySQL or Postgres.
    • Strong ability to take initiative and wide latitude for independent judgment.
    • Strong ability to handle multiple assignments at one time while working independently and effectively under deadlines.
    • Strong analytical skills and the ability to focus on many tasks at once
    • Experience using and developing software for Linux is a must, but cross-platform development exposure (Linux, Mac OS and Windows) is a bonus
    • Excellent interpersonal skills, and ability to express computer-related information in layman’s terms
    • Professional communication and interaction within all levels of the organization 
    • Demonstrate respect and dignity in decisions, communications, and actions

    Working Conditions and Physical Effort:

    • Work is normally performed in an office environment
    • No or very limited physical effort is required
    • No or very limited exposure to physical risk
    • Some travel maybe required


    Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
    Share on your newsfeed