ACT, Inc. Lead Software Engineer, Python & AWS in Iowa City, Iowa
In 1959 ACT disrupted the assessment industry. Now we’re doing it again as we become a Learning, Measurement, and Navigation company.
We're connecting our world-renowned assessment services to cutting-edge learning and navigation solutions. More than ever before, ACT is fulfilling its mission of helping people achieve education and workplace success.
Pushing the boundaries begins with team members who turn technology and data into holistic, actionable information.
When you explore new ideas and create innovative solutions, the results are exciting for team members and empowering for learners. Won’t you join us?
Learn more about working at ACT at
If you have a passion for learning and continually improving as a software developer, collaboration, communication and leadership skills are your strengths, check out this new opportunity at ACT. We are hiring for a Lead Software Engineer position that is responsible for developing ACT’s next generation products and services. The focus of this position is ACT’s Constructed Response Automated Scoring Engine – CRASE development using Python, Flask, scikit-learn and many other libraries, as well as AWS services like API Gateway, EC2, DynamoDB, Lambda, CloudWatch, etc. ACT primarily uses AWS, and the best software architecture designs that AWS makes possible. Ability to quickly learn and apply new services, architectures, programming languages, frameworks, processes, and tools is essential.
ESSENTIAL JOB RESPONSIBILITIES
Typical work-related activities include:
Implement model training framework (calibration), item configuration tools, model serving system (prediction), secure API for scoring constructed responses, dashboards, etc. of the Constructed Response Automated Scoring Engine (CRASE)
Work with a team that uses Scrum based process (within Scaled Agile Framework) to deliver software product increments.
Write code including unit tests, and follow the established processes (including branching, pull requests, code reviews, merging, etc.) to deliver it to the appropriate Bitbucket Git repositories.
Implement back-end APIs (usually REST APIs implemented with Amazon API Gateway, Lambda and other services like EC2, DynamoDB, RDS, SQS, etc.)
Lead and actively participate in process improvement, technology selection and architecture design within area of expertise. Recommend tools and standards to ensure software quality and performance standards.
Provide leadership through mentoring, coaching and advising other team members.
Work with DevOps to automate building environments in AWS, and deploying code and configuration.
Collaborate with Scrum team to support all SDLC activities. This includes activity in consideration of product scalability, reliability, consistency, and performance, as well as leveraging static code analysis tools, and how we support production monitoring.
Bachelor’s degree in a related area, preferably in Computer Science, Mathematics, Statistics or Information Systems
Or an equivalent combination of education and experience from which comparable knowledge and abilities can be acquired
At least 7 years of software development experience is required
Significant experience with Python and Flask is required
Significant experience with AWS is required (AWS certifications desired and highly valued)
Experience working as part of teams that uses Scrum based process (within Scaled Agile Framework) to deliver software product increments
Experience with EdTech and IMS Global standards like QTI Results Reporting is preferred
Experience with scikit-learn is preferred
Experience with Java is preferred
Experience working in an environment that uses an agile software development process is preferred
Experience with Git version control and GitFlow is preferred
Knowledge, Skills and Abilities:
Knowledge of JSON and XML is required
Knowledge of REST and The OpenAPI (Swagger) Specification is required
Knowledge of relational and NoSQL databases (MySQL, DynamoDB, MongoDB, etc.) is required
Strong communication and collaboration skills are required
Self-motivation and results-orientation are required
Demonstrated ability to learn quickly, and write high quality code is required
Knowledge of HTML and CSS is preferred
Knowledge of Data Science, Machine Learning and Artificial Intelligence concepts is preferred
Knowledge of Natural Language Processing concepts is preferred
Knowledge of static code analysis tools (SonarQube, HPFortify, Crucible, etc.) is preferred
Knowledge of production monitoring solutions (NewRelic, Tivoli, App Dynamics, SCOM, etc.) and synthetic transaction scripting is preferred
Knowledge of test automation frameworks (Robot) is preferred
CategoryInformation Technology (Development)
TravelNo Travel Required
ACT is an Equal Opportunity Employer/Minorities/Females/Protected Veterans/Disabled.