UFG is currently seeking a Sr. Software Engineer to help guide the success of the team through the delivery, development, and maintenance of software products utilizing modern development techniques. This role helps ensure team cohesion by collaborating with and coaching team members, pursuing opportunities for improving teamwork, and continuously developing their own skills.
Qualifications:
- Participate, and have an innovative and guiding role, in the development and maintenance of software in accordance with the needs of the organization.
- Collaborate as a member of a cross-functional, Agile team to achieve business objectives.
- Drive continuous improvement of the team.
- Exemplify and ensure a quality-driven mindset.
- Provide and receive technical guidance to/from peers.
- Foster development and growth of less experienced developers.
- Troubleshoot complex issues and identify and implement solutions.
- Develop, improve upon, and follow programming and documentation standards.
- Communicate across teams to share knowledge, articulate technical concepts to non-technical personnel, and meet business objectives.
- Demonstrate problem sensitivity.
- Assist with product releases.
- Evaluate software tools and languages for effectiveness.
- As member of an agile team, you may perform duties that are typically performed by other job types.
- As member of an agile team, this role will be accountable to the team Working Agreement and evolving processes developed and adopted by the team.
Qualifications:
Education:
- High School diploma or equivalent.
- Associate's or higher degree in computer science, information technology or related technical field is preferred.
Certifications/Designations:
- Employees are expected to participate in continuing education throughout their careers.
Experience:
- 6+ years of experience with software development.
- 6+ years of experience with Version Control Software, including 3+ years specifically in Git/GitHub.
- 4+ years of experience in the following work practices:
- Test-driven-development (TDD)
- Behavior-driven-development (BDD, or ATDD Acceptance Test Driven Development, or Specification by Example)
- Automated testing
- Ability to mentor and grow these skills/experience in the three current product Software Engineers working in the product.
- Strong root cause analysis and symptom identification.
- Growth mindset.
- 3+ years' experience in designing multi-tiered architectures and breaking out functionality into discrete reusable components.
- 6 months of demonstrated self-initiated mentoring of peers.
- Agile/Scrum experience preferred.
- Insurance experience preferred.
- Java and/or C# (C-Sharp) experience preferred.
- Experience in the following preferred:
- SOLID Design Practices.
- Domain Driven Development.
- Devops
- Proven success in rebuilding a failing system.
Working Conditions:
- General Office Environment (or remote).
- Regular work duties may require work outside of regular business hours.
Skills & Knowledge:
Knowledge:
- Strong understanding of Object-Oriented, Functional or Applied Programming
- Strong knowledge of the languages and environments used to develop applications and programs.
- Strong understanding of data storage systems, integrations, and processing results
- Demonstrable understanding of multiple application architectures or frameworks
- Understanding of application security concerns and mitigation