A cover letter is required for consideration for this position and should be attached as the first page of your resume. The cover letter should address your specific interest in the position and outline your skills and related experience.
We are excited for you to consider joining our growing team.
The Inter-university Consortium for Political and Social Research (ICPSR) is part of the Institute for Social Research (ISR) at the University of Michigan. The consortium maintains the world’s largest archive of social science data with 10,000+ studies relating to education, aging, criminal justice, substance abuse, terrorism, and more. A global leader in data science, ICPSR also supports continuing education in research design, statistics, and data analysis.
ICPSR is looking for an Associate Software Engineer to join our Computing and Network Services group. Our team maintains several software products and provides data curation, archival, and publication solutions to a growing user community of social science researchers, students, instructors, and policymakers. We are modernizing our technology stack and rebuilding some of our data access control products using containerized Spring Boot microservices and AWS cloud services. If you love designing and writing secure code with automated test cases in an agile, test-driven development framework, we want to talk to you!
You will report to the Computing & Networking Services development lead.
- Analyze requirements, document design / code specifications (10%)
- Develop secure code in an agile framework (40%)
- Write automated test cases for the code you write (40%)
- Work with the team in agile ceremonies such as stand-up and user story estimation meetings (10%)
- Bachelor's degree in Computer Science / Engineering, or a related field, or equivalent work experience
- 2 or more years experience - academic, professional, or combined - developing secure applications & APIs using technologies such as Java, Spring framework, including Spring Boot, Hibernate or JPA, and relational databases such as Oracle, Postgres
- Familiarity with agile frameworks, automated testing
- Familiarity with full-stack web development using HTML, CSS, JavaScript (NodeJS, React, NextJS, etc.)
- Experience with behavior-driven / test-driven development, CI/CD automation
- Experience writing acceptance tests using Cucumber, Robot framework, or similar frameworks
- Familiarity with AWS cloud services, including serverless services
- Familiarity with graph data stores such as Neo4j, Amazon Neptune, and query languages such as GraphQL
- Familiarity with machine learning, Python, Jupyterhub
You may be asked to provide samples of your programming work. An assessment to evaluate candidate skill level may be administered as part of the interview process.