Software Engineer- job post SHAZAM
Job Description
SHAZAM recognizes that financial institutions build better communities, and this drives our passion to strengthen financial institutions. We are a trusted partner to our valued customers providing answers, choice, and innovation with an impeccable level of customer service – a level unmatched in the industry.
And here’s the best part - we’re a national company that offers a small-company feel, a cultural balance that’s hard to come by but very real at SHAZAM. Your growth and development are top priorities and you’ll be surrounded by talented individuals and postured to make a real difference in the company. As a team member at SHAZAM, you’ll be an essential part of our mission as we work together strengthening financial institutions.
This is a hybrid position based out of our Johnston, IA office.
What we’re looking for:
SHAZAM is looking for a Software Engineer to help build and enhance DigiHive™, our modern digital banking platform that unifies online and mobile banking into a single, intuitive experience. As a Software Engineer, you will be responsible for supporting the development, maintenance and improvement of software applications with minimal guidance from more experienced engineers. This position focuses on executing complex foundational engineering practices, writing clear and reliable code, assisting with troubleshooting and contributing to well-defined tasks throughout the software development lifecycle (SDLC).
What you'll do:
Write clean, reliable, scalable, and testable code using one or more core programming languages
Design production‑quality solutions with attention to maintainability, performance, and long‑term value
Participate in all phases of the SDLC: planning, design, development, testing, deployment, and maintenance
Build and enhance features that support:
Secure authentication and single sign on
Real time balances and transaction history
Money movement (ACH, transfers, mobile deposit, bill pay)
Card controls and user profile management
Alerts, notifications, and fraud prevention capabilities
Diagnose, troubleshoot, and resolve moderately complex software issues
Collaborate with product partners and cross‑functional teams, clearly communicating technical details and tradeoffs
Conduct code reviews and provide constructive feedback to peers and junior engineers
Contribute to process and tooling improvements by identifying inefficiencies and proposing actionable solutions
Research and evaluate new technologies, tools, and approaches to solve engineering challenges
Create and maintain clear technical documentation for implemented features
Participate in root cause analysis (RCA) and help improve system reliability, scalability, and monitoring
Serve as a subject‑matter expert for a specific application, subsystem, or process
Participate in an on‑call rotation with support and guidance
What you need:
Minimum of 3 years of professional software development experience and proficiency in Java
Bachelor’s degree in software engineering, computer science, or a relevant field preferred
