Software Engineer in Test

Location
Chicago
Posted
Jul 12, 2017
Administrative Jobs
Technology, Analysts & Programming
Institution Type
Four-Year Institution
About The Unit: The Center for Data Intensive Science at the University of Chicago is a research center pioneering translational data science to advance biology, medicine, and environmental research. Data driven research approaches require interdisciplinary innovation in computing technology, algorithms, and statistical models. The growing volume of data available necessitates advances in the sophistication of these methods. Our work centers around developing instruments to integrate commons of complex data with cloud computing technology. We architect large scale commons of research data, computing resources, applications, tools, services. Our guiding principles center around open data, open-source software, and open infrastructure. Through this approach, we can more effectively use data at scale to study and pursue scientific inquiry in the areas of biology, medicine, healthcare, and the environment. We are leaders in data sharing, democratizing access for the broader research community and accelerating discovery. Our leadership emerged with the launch of the first open-source cloud-based computational research platform recognized as an NIH Trusted Partner, achieving rigorous data quality and data management service requirements. Today we offer over seven petabytes of rich research data through the following data commons platforms: - NCI Genomic Data Commons - Bionimbus Protected Data Cloud - Blood Profiling Atlas for Cancer - OCC Environmental Data Commons - Open Science Data Cloud We are based in Chicago, but our work engages collaborators from across the world.

Unit Job Summary: The Software Engineer in Test in the Center for Data Intensive Science will work with cloud computing infrastructure primarily based on OpenStack to architect and implement quality assurance practices. Works in Linux-based systems in Python and some C/C++, Go and various web programming. Solves complex problems and performs at a high technical level in programming activities. Coding includes the full stack including systems orchestration, API development, algorithms and data structures, and user interfaces. Projects span management, sharing, and provenance of large data sets; automation, metrics, and scheduling for cloud computing, large scale pipelining of next-generation sequence analysis, transfer programs/protocols for high-speed networks and resource visualization. Primary responsibilities include: - Responsible for creating the project Software Quality Assurance Plan - Create and implement QA Test Plans and SOPs - Test functionalities prior to each release on each tier (QA, Stage and Production) - Responsible for testing the product to be compliant with technical specifications and policy requirements. - Identify necessary teams to successfully complete the Test Phase - Contribute to Master Test Plan and Strategy by identifying appropriate test techniques and tools that ensure product quality and test completion - Develop the test case documents according to the Master Test Plan/Test Strategy - Facilitate triage of defects and assist in defect investigation and escalation - Walk through the test results with the team and communicate status to management and project leadership - Assist with the implementation of automated testing tools - Serves as a liaison with internal and external collaborators on various research projects. - Perform other duties as assigned. This at-will position is wholly or partially funded by contractual grant funding which is renewed under provisions set by the granter of the contract. Employment will be contingent upon the continued receipt of these grant funds and satisfactory job performance. Please submit a code sample with your application.

Unit Education: Bachelor's degree in computer science, mathematics, statistics, engineering, or a related field required. Certification of one or more of the following: CTFL, CTAL-TA, CTAL-TTA(Certified Tester Foundation Level, Certified Tester Advanced Level - Test Analyst, Certified Tester Advanced Level - Technical Test Analyst) preferred. Master's degree in computer science, mathematics, statistics, engineering, or a related field preferred.

Unit Experience: Minimum of two (2) years of professional QA experience in testing activities for all phases of the testing lifecycle required. Experience designing and evaluating tests required. Experience with unit testing, test case development, automated regression testing required. Experience using applications such as Python, C/C++, Go required. Unix/Linux experience required. Version control experience required High performance/ cloud computing experience preferred. Unix/Linux programming or system administration experience preferred. Continuous integration experience preferred. UX/UI experience preferred. Git version control experience preferred. Familiarity with genomics preferred.

Unit Job Function Competencies: Detailed knowledge of software verification and validation processes and procedures required. Excellent debugging and trouble shooting skills required. Understanding of software development lifecycle required. Ability to prioritize and manage workload tomeet critical project milestones and deadlines required. Attention to detail required. Ability and willingness to acquire new programming languages, statistical and computational methods, and background in research area required. Ability to work in a collaborative team environment required.