Software Architect

GW Inc.
Rockville, United States of America
3 days ago

Role details

Contract type
Temporary contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate
Compensation
$ 222K

Job location

Remote
Rockville, United States of America

Tech stack

HTML
Java
JavaScript
Microsoft Windows
Application Frameworks
Automation of Tests
CSS
Clinical Data Management
Clinical Data Repository
Static Program Analysis
Code Review
Computer Programming
Databases
Data Integrity
Data Systems
Relational Databases
Electronic Data Capture
Electronic Signatures
R
Integrated Development Environments
Spring
Apache Struts
Python
Linux System Administration
Object-Oriented Software Development
Systems Development Life Cycle
SAS (Software)
Secure Coding
Service-Oriented Architecture
Software Engineering
Software Quality Assurance (SQA)
SQL Databases
System Testing
Web Applications
Enterprise Software Applications
Vue.js
Information Technology
Data Management
Web Technologies
Osgi

Job description

The Biostatistics Center of the Milken Institute School of Public Health is an off-campus research facility of The George Washington University located in Bethesda, Maryland. The Biostatistics Center (Center) serves as the coordinating center for large scale multi-center clinical trials and epidemiological studies funded by federal agencies including the National Institutes of Health (NIH). The Center is a leader in the statistical coordination of major medical research programs of national and international scope. Visit our website at: www.bsc.gwu.edu.

Employees in the Enterprise Systems Development subfamily are responsible for developing, troubleshooting, designing modifications, and upgrading enterprise systems software. Typical duties include coding, testing, documenting, and implementing solutions to enterprise systems software, including the development of patches and upgrades, and assisting in the daily support of enterprise systems applications.

Within this subfamily, the Software Architect position is an expert-level individual contributor responsible for the design, development, enhancement, and ongoing support of the Center's in-house developed clinical data entry and management system called MIDAS. MIDAS is used to capture, validate, store, and report participant data across the Center clinical trials and epidemiological studies. This position works on the MIDAS system and its successor releases, and performs all work in accordance with the BSCOIT (Biostatistics Center Office of Information Technology) software development life cycle (SDLC), the associated procedures and policies that govern application development at the Center, and the programming and data integrity standards that apply to regulated clinical research software.

As a Level IV (Expert) contributor, the Software Architect position is distinguished from other developers by the depth and complexity of the work and will have primary responsibility for the most technically complex and highest risk components of the system, work that is not assigned to developers at the lower level. The position applies expert judgment and technical authority over its deliverables; demonstrates deep technical authority on the architecture and internals of the system; exercises a high degree of independent judgment; resolves the most difficult technical problems, and sets and maintains the engineering and quality standards for the work produced. This technical authority is distinct from project oversight, which remains with the supervisor. Deep expertise with the system codebase, its data model, and its operational and regulatory dependencies is expected.

Because the clinical data entry and management system is regulated research software, the developer is expected to design, build, and maintain it in conformance with the following standards and practices. MIDAS is developed and maintained under these same standards.

Essential job duties: · The core responsibility of this position is to serve as an expert in relevant technologies. · Serves as the senior technical developer and subject matter expert for the Center's in-house developed clinical data entry and management system (MIDAS). · Responsible for the design and delivery of the most complex and highest risk development work on the platform, producing high quality, well architected solutions to specifications. · Plans, designs, and develops the most complex features and enhancements for the clinical data entry and management system, using appropriate tools and techniques to identify and resolve difficult technical problems. Ensures that all work is consistent with the established system design and that the software meets requirements for quality, security, data integrity, maintainability, and extensibility. · Translates functional, regulatory, and protocol requirements into sound technical designs and specifications for the components developed. Requirements and priorities are received through the supervisor responsible for software development projects. · Implements, patches, and upgrades the application and its components, processing all changes through the Center's change control and validation procedures that is required for clinical data software. · Codes and tests software in accordance with the SDLC and applicable clinical data programming standards, and prepares solutions for release following the defined promotion, validation, and deployment procedures. · Designs and implements the controls required for regulated clinical data systems, including role-based access, electronic signatures, and complete audit trails that record the original value, the change, the date, and the identity of the person who made the change. · Adheres to the Center policy on the use of generative AI in software development, which requires mandatory human review, dependency verification, and static analysis before it is accepted into the codebase, with particular attention to the integrity and traceability requirements of clinical data software. · Applies and upholds the Center coding standards and secure development practices and participates in code reviews as both author and reviewer. · Troubleshoots and resolves the most difficult defects and production issues within the system, including support for local and remote users at the clinical sites. · Documents developed software and maintains accurate technical, validation, and user facing documentation for the components she produces. · Participates in requirements, verification, and testing sessions for her work, communicating technical concepts and decisions clearly when called upon. · Keeps up-to-date of the latest technologies and best practices and help propagate innovation within EIS and across the division. Additionally, will provide advice and make recommendations from a technology stand point related to projects, demands, and ongoing operations. Assists coaching and training the organization stakeholders with regards to technical matters. · Non-supervisory role and does not direct or coordinate the work of other staff. Raises and discusses issues and concerns with software development supervisor for resolution. Receives project assignments, priorities, and cross team communication through the supervisor responsible for software development projects. · Performs other duties as assigned. The omission of specific duties does not preclude the supervisor from assigning duties that are logically related to the position.

Requirements

Qualified candidates will hold a Bachelor's degree in an appropriate area of specialization plus 7 years of relevant professional experience, or, a Master's degree or higher in a relevant area of study plus 5 years of relevant professional experience. Degree must be conferred by the start date of the position. Degree requirements may be substituted with an equivalent combination of education, training and experience., * Expert level technical background and excellent information technology skills.

  • Extensive experience in software and application design and architecture, including ownership of large, complex applications across multiple release cycles.
  • Strong software development and coding experience in object-oriented languages such as Java, with related web technologies such as JavaScript, HTML, and CSS, and familiarity with relevant application frameworks (for example, OSGi, Spring, Struts, or Vue).
  • Experience designing and developing complex Windows-based and Linux-based systems, web applications, and batch applications.
  • Strong knowledge of relational databases and database programming, and the ability to design data models that support data integrity and reporting.
  • Demonstrated understanding of software quality assurance, secure development, and computer system validation principles.
  • Working knowledge of the standards governing clinical data systems, including 21 CFR Part 11, ICH GCP, ALCOA data integrity, and CDISC, or the ability to acquire and apply them quickly.
  • Ability and willingness to work within a defined SDLC, including disciplined change control, validation, code review, and documentation requirements.
  • Demonstrated ability to work independently as an expert-level developer, owning complex technical work to completion and serving as a deep technical authority on a system without relying on supervisory authority over others.
  • A technical and innovative mindset with strong attention to detail, and outstanding written and verbal communication abilities.
  • Direct experience developing or maintaining a clinical data management, electronic data capture (EDC), or electronic case report form (eCRF) system in a regulated environment.
  • Experience with a coordinating center, contract research organization, or sponsor data management environment.
  • Experience migrating monolithic applications toward a service-oriented architecture.
  • Experience applying static analysis tools, dependency management, and automated testing in a validated development environment.
  • Familiarity with statistical or data tools such as SAS, R, Python, or SQL used downstream of the data system.

Apply for this position