• Lead Software Engineer

    Job Locations US-IA-Iowa City
    Posted Date 6 days ago(12/4/2018 6:10 PM)
    Job ID
    2018-1391
    # of Openings
    1
    Category
    Information Technology (Development)
    Travel
    No Travel Required
  • Overview

    ACT is a nonprofit organization helping people achieve educational and workplace success.  Our programs are designed to boost lifelong learning in schools and workplaces around the world. Whether it's guiding students along their learning paths, enabling companies to develop their workforce, fostering parent, teacher, and counselor understanding of student progress, guiding job seekers toward career success, or informing policymakers about education and workforce issues. ACT is passionate about making a difference in all we do.

     

    Learn more about working at ACT at act.org!

    Responsibilities

    The Lead Software Engineer is responsible for the design and development of IT solutions to support of the Data Engineering Solutions teams. The Software Engineer will be responsible for ACT’s data pipeline.   The job includes development in Java, NiFi, &/or Kafka.  The job includes development in Java, integrating with Bitbucket for source control, and Jenkins for builds. This includes development in both Container and Serverless computing environments. This role will participate in the Agile process and ensure product quality, robustness, scalability, and consistency.

    Typical work-related activities include:

    • Work on high priority tasks on the back-end services, analytics, or front-end
    • Independently design, maintain, and enhance applications capitalizing on existing automation frameworks and reusable components
    • Actively participate in process improvement and tool selection discussions and decisions within area of expertise
    • Recommend product, infrastructure, or design changes to ensure quality and performance standards
    • Solve interesting problems from refactoring components to designing, building, and tuning new ones
    • Review designs and code and drive critical architecture decisions
    • Operate in a fast-paced, distributed, and agile team that ships production code every week.
    • Support junior team members to proactively anticipate and resolve issues across Scrum teams
    • Take responsibility for department success through mentoring, coaching, and advising other team members
    • Recommend tools and standards to ensure software quality and performance standards

    Qualifications

    Minimum Qualifications

     

    Education:

     

    • Bachelor’s degree in a related area required; preferably in Computer Science, Engineering, Mathematics, Statistics or Information Systems
    • Or an equivalent combination of education and experience from which comparable knowledge and abilities can be acquired.

    Experience:

    • Minimum of seven years of progressive IT experience
    • Subject matter expertise in one or more of the following required: Java, Jenkins, RabbitMQ, Kafka
    • Expertise developing applications in a microservice architecture utilizing REST API web services
    • Experience in architecting software solutions, and technical design in continuous integration environment required
    • Previous experience and demonstrated success leading and building teams required
    • Experience working in a microservice architecture preferred
    • Experience with AWS solutions is preferred
    • Experience with Kubernetes is preferred
    • Experience working in an Agile development environment
    • Expertise in production monitoring solutions such as Splunk and NewRelic
    • Expertise in architecting software solutions, and technical design in continuous integration environment

     

    Knowledge, Skills and Abilities:

    • Ability to help lead a Scrum team, following SAFe Agile practices
    • Strong communication and collaboration skills
    • Ability to lead team through changes in a rapidly transforming organization
    • Demonstrated ability to lead technical professionals and influence product stakeholders
    • Demonstrated success in new technology implementation
    • Demonstrated knowledge of version control such as Git / Bitbucket and Jenkins for builds
    • Demonstrated relational and no-SQL database skills (MongoDB, MySQL) required
    • Demonstrated knowledge of messaging broker solutions such as RabbitMQ
    • Demonstrated ability to integrate code into automated deployment pipelines required
    • Demonstrated ability to support, mentor, coach, and advise other team members
    • Ability to adapt to changing technology landscape, learn new tools, and how to apply them to daily work.
    • Demonstrated knowledge of how to write/test RESTful APIs required
    • Demonstrated knowledge with Big Data technologies like MongoDB, park/Pig/Storm/Kafka/Hive/HDFS required
    • Understanding of test automation frameworks such as Robot preferred

    Options

    Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
    Share on your newsfeed

    Connect With Us!

    Not ready to apply? Connect with us for general consideration.