Hiring: Software Engineer II


The primary responsibility of the Software Engineer II is to design, develop, test, assess, and troubleshoot software in support of the business requirements. This includes researching, developing, maintaining, and documenting software throughout the product life cycle. This position will be focused on building custom software applications and integrations from the ground up, as well as maintaining the current suite of solutions and integrating with various third-party solutions.

The Software Engineer II is responsible for writing and implementing maintainable code across multiple code bases, staying current on the latest development trends and techniques, and providing back-end support for AMU’s suite of products. They will be expected to work collaboratively on a cross functional team.  The Software Engineer II can work on problems of diverse scope; demonstrates good judgment in selecting methods and techniques for obtaining solutions.


  • Provides technical expertise to design and develop RESTful APIs, microservices and other software components that support business needs.
  • Works closely with the QA, UX and other related teams to ensure consistent understanding of requirements and approach.
  • Provide technical support and troubleshooting for current systems or added features.
  • Uses tools, languages, coding standards and best practices to develop new product features and maintain year-over-year product functionality and enhancements. Creates and executes unit & automated tests and addresses defects.
  • Ensure development work meets business goals while being architecturally sound, built for the long term and designed to support ease of maintenance – ensuring consistent application of coding standards.
  • Quickly understands existing code and contributes in a way consistent with prior coding conventions.
  • Participate in code reviews, provide constructive feedback, and share knowledge.
  • Creates and maintains documentation on internal architecture of the system.


  • Must work well as part of a team, while being highly self-motivated and directed.
  • Actively demonstrates passion for technology by proactively seeking opportunities to apply knowledge to new and existing products.
  • Excellent written and verbal communication skills, with a strong attention to detail and problem solving abilities.
  • Is industriousness, conscientious, and dedicated to delivering solutions under tight schedules.


  • Bachelor’s degree in a related field or work experience.
  • 3+ years of experience designing and developing back-end services and API’s in the following areas:
    • C#
    • .net Core
    • Node js
    • Relational databases (SQL Server, MySQL, etc.)
  • Experience with deployment, provisioning, and automation tools.
  • Fluent in modern software development practices (Github, pull-requests, Jira).
  • Experience with cloud development (Azure, AWS) is a plus.
  • Containerization experience with Docker and Kubernetes is a plus.