With an abundance of data, new technology and increasing demand for knowledge and experience sharing, research without software is becoming increasingly difficult. New, customized tools are needed for data sharing, processing, analytics and visualization. At the same time, rising standards of sustainability, accessibility and reusability have raised the bar for the development, deployment and maintenance of reusable software.

Stable, sustainable support

Stable, sustainable support

The CRC provides a stable home for software development skills, one which does not experience the same cyclical turnover as academic labs staffed with students and postdocs. Working closely with research teams, developers are tuned in to the unique needs of research software development in an academic setting. We advocate for sustainable practices, and help researchers build more reliable, efficient code that can be more easily shared and reused. This support complements the tools and training provided by other divisions of the CRC, to provide comprehensive research computing support.

Flexible approach

Flexible approach

Embracing agile software development principles, the CRC can configure a team to a project of any complexity. These principles, which prioritize collaboration, responsiveness and sustainability, are especially fitting in an academic research environment. Emphasis on good software engineering practices, technical excellence and delivering working software early in the process, are key components of a more disciplined and flexible approach to software development.

Broad range

Broad range

Believing there is no project too big or too small, the CRC can build anything from prototypes and proofs of concept to end-to-end solutions. We develop software, web portals, novel cyberinfrastructure, and mobile apps. If funding is available, we can configure a team and get started. If things are still at the idea stage, talk to us and we can look into pursuing funding together. We are here to collaborate, not just provide work for hire. The CRC includes a group of computational scientists who pursue their own research in addition to partnering with ND faculty on proposals and projects.

Security-minded

Security-minded

Cybersecurity is a foremost concern for the CRC. To empower our development process while simultaneously reducing project risk, we use a workflow that maps onto both the National Institute of Standards and Technology (NIST) System Development Life Cycle and Risk Management Framework. Moreover, the Center's cybersecurity team consults on all development projects to recommend controls and secure approaches to architecture. Finally, the same team examines projects at various life cycle points (e.g., during development, prior to and after production deployment) through source code security reviews and automated/manual security scans.

Computer system testing and evaluation

Testing and evaluation of systems performance

CRC offers testing and performance evaluation of third party software and computer systems, including all physical components and the full software stack. Anything in the data path, software or hardware including distributed environments, is included, as it can affect performance. Third party evaluation and performance analysis helps eliminate potential bias. 

Opportunities to support research

Although more affordable than commercial software engineers, our rates still put professional-quality research software development out of reach for some projects, especially in social sciences and liberal arts domains. To learn more about supporting research by subsidizing the budget for programmers, contact us.

Technologies we use

GitHub logo
Redmine logo
We use RedmineCRM plugins
Django logo
PostgreSQL logo
PyCharm logo
Atlassian Confluence logo
Atlassian JIRA logo
Drupal logo
EmberJS logo
AngularJS logo
Jenkins logo
MPI logo
Swift logo
OpenCV logo
Open Science Framework logo
TensorFlow
Docker logo
ZenHub logo
 

Project Highlights

DARPA CRAFT logo

CRAFT Repository

The DARPA CRAFT program seeks to make it easier, faster and cheaper to design specialized integrated circuits. In order to do this, different teams in different locations using different tools need to be able to work together seamlessly. This project aims to build a trusted repository for the CRAFT program that innovates in seamless data transistion, automation and re-use of data and design flows, and knowledge and experience sharing.

SimEOC training

SimEOC

Emergency operations centers (EOCs) are temporary organizations that emerge to respond to disasters, bringing together dozens of private and public organizations. They have primary responsibility for pubic safety, yet are rarely engaged outside a disaster situation. SimEOC is an online, web-based training tool that delivers emergency management exercises to dispersed trainees, enabling them to "practice as they fight" and prepare to work together during a disaster.

PADs card with drug Cipro

Paper Analytical Devices

Many pharmaceuticals, particularly in the developing world, are of poor quality or outright fakes. The PADs project combines innovative paper analytical devices with computer vision, machine learning, and mobile technology to enable rapid field testing of large numbers of medications to uncover falsified products.

VectorBase logo

VectorBase

Invertebrate vectors of human pathogens are organisms that cause disease and can represent potential agents of biowarfare. VectorBase is a FISMA compliant bioinformatics Web portal that enables multi-site collaboration, providing resources to the scientific community to support basic and applied research.

DHARMA 3D point cloud image merge

DHARMA

The Digital Historic Architectural Research and Material Analysis (DHARMA) team seeks to understand and preserve both the physical structure and design principles underlying irreplaceable historical architecture, such as the Taj Mahal and Roman Forum. The team is developing methods for merging image and 3D point cloud data into a single interactive system for cataloging, analyzing and displaying both point and raster data at extremely high resolutions.

C_SWARM logo

C-SWARM

The goal of the Center for Shock Wave-processing of Advanced Reactive Materials (C-SWARM) is to predict shock conditions under which new materials can be synthesized. The CRC provides the advanced high perfomance computing and software engineering support needed for sophisticated multi-scale simulations, which involve Exascale predictive computations, verification and validation and uncertainty quantification.