> Markdown version of [/jobs/ext/169578-principal-developer](https://www.wearedevelopers.com/jobs/ext/169578-principal-developer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Principal Developer - **Company:** Federal Home Loan Bank of Des Moines - **Location:** Des Moines, IA, United States - **Experience:** Expert - **Salary:** $128,211.0 - $152,250.0 - **Contract:** Permanent contract - **Skills:** Clean Code Principles, HTML, Java (Programming Language), JavaScript (Programming Language), Agile Methodology, Artificial Intelligence, Business Analytics Applications, Applications Architecture, Application Frameworks, Automation of Tests, Unit Testing, Bootstrap (Software), Cascading Style Sheets (CSS), Continuous Integration, Hibernate (Java), Junit, Node.Js, Object-Oriented Software Development, Scrum Methodology, Release Management, Mockito, Software Engineering, Software Systems, SQL Databases, TypeScript, Extensible Markup Language (XML), Enterprise Software Applications, Test-Driven Development (TDD), Gitlab, AngularJS, Infrastructure Automation Frameworks, Information Technology, Integration Frameworks - **Published:** May 14, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=f4376035e10d35cf ## About the Role Do you have experience in Release management?, Do you have a Bachelor's degree?, * Bachelor's degree in computer science, Management Information Systems, relevant field and 10+ years' experience or 12+ years' equivalent work experience. * Experience leading other developers in the projects they are assigned. * Deep understanding and experience in developing enterprise software solutions using technologies such as Java, SQL, HTML, CSS, Angular, Bootstrap, Typescript, Node. * Deep understanding and experience with Java 8 or beyond and open-source frameworks (e.g., Spring Ecosystem, Hibernate, jUnit). * Experience developing software using technologies such as Java EE, XML, SQL, HTML, CSS, JavaScript, Angular 11, Bootstrap, Foundation, Typescript, NodeJS. * Experience with Java 11 and open source frameworks (e.g., Spring Ecosystem, Hibernate, jUnit5, Mockito). * Deep understanding and experience in object-oriented design principles and patterns, application architecture, test driven development, and the software development lifecycle. * Deep understanding and experience with automated test, build, and integration techniques. * Deep understanding and experience in development teams using automation associated with continuous integration, deployment and release management. * Deep understanding and experience with multiple development methodologies and principles including Agile, Scrum, and waterfall. * Deep understanding and experience with data driven design and development principles. * Deep understanding and experience with infrastructure automation tools such Gitlab. * Strong verbal and written communications skills that promote effective working relationships in a team-oriented environment. * Ability to communicate to all levels of users (internal and external), strong problem-solving skills, adaptable, proactive and willing to take ownership. * Ability to positively engage, self-motivate and possess a strong desire to learn. * Financial Services industry experience preferred but not required. ## Description The Principal Developer is a member of the application development team. The position is responsible for designing and developing technical solutions in support of our business needs. Using a continuous improvement mindset, the Principal Developer will help to establish necessary development practices using agile principles. In addition, the individual will provide mentorship and leadership to other team members and on projects and initiatives., * Works as a member of the application development team to complete custom software solutions related to the Bank's highest priority initiatives. * Create well-written, efficient code in Java for various applications. * Review other developers code and provide constructive feedback. * Supports existing applications and projects by responding to incidents, problems, and service requests. * Has a continuous improvement mindset as it relates to methodologies, procedures, and technologies. * Mentors and supports other developers in the design and construction of software solutions. * Works with business partners directly to ensure solution requirements and quality are addressed in the development cycle. * Works closely with other team members to ensure solutions are well communicated and documented. * Acts as the technical Lead on application development initiatives. * Works with the business areas to gain a strong understanding of the product line you are assigned to support. * Unit tests completed software thoroughly to ensure functionality and performance. * Considered the SME in all technologies utilized by the team and in your overall applications knowledge and expertise by both IT and the applicable business area(s). * Recommend patches and fixes for broken code. * Provides application analysis and support for vendor developed applications. * Ensures software designs and development efforts are implemented consistently, on-time, and within budget constraints; requiring limited revisions. * Understands internal controls and regulatory requirements as they relate to the financial industry. * Multitask and work on multiple development initiatives at the same time. * Create full stack enterprise software solutions to business problems. * Leverage Artificial Intelligence to improve development efficiency, solution quality, and team productivity. ## Related Videos - [Next Level Enterprise Architecture: Modular, Flexible, Scalable, Multichannel and AI-Ready?](https://www.wearedevelopers.com/videos/1017-next-level-enterprise-architecture-modular-flexible-scalable-multichannel-and-ai-ready) - [The Resilience of the World Wide Web](https://www.wearedevelopers.com/videos/1281-the-resilience-of-the-world-wide-web) - [How Unit Testing Saved My Career](https://www.wearedevelopers.com/videos/1642-how-unit-testing-saved-my-career) - [WeAreDevelopers LIVE - Modern DevOps for IoT Devices and More](https://www.wearedevelopers.com/videos/1805-wearedevelopers-live-modern-devops-for-iot-devices-and-more) - [NoLoJS - Avoiding JavaScript Cruft with HTML and CSS - Aaron T. Grogg](https://www.wearedevelopers.com/videos/1806-nolojs-avoiding-javascript-cruft-with-html-and-css-aaron-t-grogg) - [From boy scouting to redrawing the landscape](https://www.wearedevelopers.com/videos/1140-from-boy-scouting-to-redrawing-the-landscape) ## Related Articles - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [What’s the Difference between a Junior, Mid, and Senior Developer?](https://www.wearedevelopers.com/magazine/238-what-s-the-difference-between-a-junior-mid-and-senior-developer) - [Résumé-Driven Development: How IT trends affect the job market for software developers](https://www.wearedevelopers.com/magazine/59-resume-driven-development-how-it-trends-affect-the-job-market-for-software-developers) - [Should senior developers refuse interview coding challenges?](https://www.wearedevelopers.com/magazine/29-should-senior-developers-refuse-interview-coding-challenges) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [93 Java Interview Questions You Should Prepare For](https://www.wearedevelopers.com/magazine/14-93-java-interview-questions-you-should-prepare-for)