Principal Developer
Madison-Davis, LLC
Des Moines, IA, United States
3 days ago
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Contract type
Temporary contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
10 years minimum
Working hours
Regular working hours
Job source
Tech stack
HTML
Java (Programming Language)
JavaScript (Programming Language)
Agile Methodology
Applications Architecture
Application Services
User Authentication
Build Automation
Automation of Tests
Cascading Style Sheets (CSS)
Cyber Security
Continuous Integration
+27 more
Software Design Patterns
Java Platform Enterprise Edition (J2EE)
Hibernate (Java)
Java Persistence API
Spring Framework
Junit
Node.Js
Object-Oriented Software Development
Scrum Methodology
Queueing Systems
Mockito
Standard Sql
Server Administration
Software Engineering
SQL Databases
Systems Integration
TypeScript
Web Services
Enterprise Software Applications
Test-Driven Development (TDD)
Gitlab
AngularJS
Information Technology
Data Analytics
Front End Software Development
Restful APIs
Microservices
Job description
The Principal Developer will evaluate the existing technology landscape, identify gaps, improve engineering standards, and guide technical decisions across multiple concurrent initiatives. This person will not have direct reports but will serve as a trusted technical resource for developers, project teams, managers, and cross-functional stakeholders., * Evaluate enterprise applications and identify architecture, security, integration, process, and delivery improvements.
- Provide technical direction across multiple concurrent software projects.
- Design and develop enterprise applications using Java and the Spring ecosystem.
- Guide the implementation of RESTful services, JPA-based solutions, microservices, and messaging integrations.
- Review technical designs for scalability, security, maintainability, and operational impact.
- Mentor developers and support technical problem-solving across the team.
- Reinforce development, testing, documentation, integration, and release standards.
- Partner with business, product, architecture, security, infrastructure, and engineering stakeholders.
- Support production applications and participate in a rotating after-hours support schedule.
- Troubleshoot incidents and implement temporary or permanent technical resolutions., * Senior technical professionals are expected to take ownership and operate with limited supervision.
- Developers collaborate across business, product, architecture, security, infrastructure, and delivery functions.
- Technical leaders are expected to mentor others and promote knowledge sharing.
- Solutions should balance immediate delivery needs with security, maintainability, and long-term architectural impact.
- Teams use a combination of Agile, Scrum, and structured project-delivery practices.
Requirements
- Bachelor s degree in computer science, management information systems, or a related discipline with at least 10 years of relevant experience, or at least 12 years of equivalent professional experience.
- Advanced experience with Java 8, Java 11, or newer Java versions.
- Deep knowledge of the Spring ecosystem, Hibernate, JPA, JUnit, and Mockito.
- Experience designing RESTful web services and microservices-based applications.
- Experience with enterprise integrations, message queues, and third-party applications.
- Architecture and solution-design experience, including authentication and authorization.
- Strong SQL and data-driven application development experience.
- Experience with Angular, TypeScript, Node.Js, JavaScript, HTML, CSS, and responsive front-end frameworks.
- Strong knowledge of object-oriented design principles, design patterns, and application architecture.
- Experience with test-driven development, automated testing, automated builds, and continuous integration.
- Experience with GitLab or a comparable source-control and delivery platform.
- Experience leading technical delivery and mentoring developers.
- Ability to organize and manage several projects with minimal supervision.
- Strong communication, judgment, ownership, and problem-solving skills.
- Availability to participate in a periodic on-call rotation.
PREFERRED EXPERIENCE
- Financial services or banking technology experience.
- Experience supporting regulated enterprise applications.
- Experience implementing third-party financial platforms.
- Familiarity with investment, treasury, capital-markets, or portfolio-management systems.
- Formal production-support and on-call experience., Agile Programming Methodologies, Architectural Services, Authentication, Banking Services, Capital Markets, Communication Skills, Computer Science, Continuous Integration, Cross-Functional, Design Patterns Programming Methodologies, Design Services, Documentation, Ecosystems, Enterprise Applications, Financial Services, Hibernate, Identify Issues, Investment Management, JUnit, Java, Java Persistence API (JPA), Java Platform Enterprise Edition (Java EE/J2EE), Leadership, Management of Information Systems/Technology (MIS), Mentoring, Microservices, Multitasking, Object Oriented Design (OOD), On Call, Problem Solving Skills, Process Improvement, Production Support, Project/Program Management, REST (Representational State Transfer), SQL (Structured Query Language), Scrum Project Management and Software Development, Security Architecture, Security Infrastructure, Software Administration, Software Design, Software Development, Spring Framework, Technical Delivery, Technical Leadership, Technical Support, Technical/Engineering Design, Test Automation, Test Driven Development (TDD), Test Plan/Schedule, Treasury, Web Design, Web Services
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on www.careerbuilder.comGood distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
LM
Luis Minvielle
about 3 years ago
AF
Ava Faulkner
7 Important Tips That Every Software Developer Should Know
about 4 years ago
TL
Thomas Limbüchler
93 Java Interview Questions You Should Prepare For
almost 6 years ago
LM
Luis Minvielle
Is Software Engineering Over-Saturated?
over 2 years ago
LM
Luis Minvielle
Why Upskilling And Reskilling is Important For Developers
over 2 years ago
JF
Jonas Fritzsch
Résumé-Driven Development: How IT trends affect the job market for software developers
almost 5 years ago