Logo
DuCharme McMillen & Associates Inc

Senior Software Engineer (Java)

DuCharme McMillen & Associates Inc, Fort Wayne, Indiana, United States, 46804


Why are long tenures and low turnover rates the norm at DMA? When you are an employee owned company, you are all about your employees, and here is proof:2024 Great Places to Work CertifiedEmployee stock ownership program eligibility begins day one of employment. ESOP contribution is targeted at 6% of your annual compensation.Company paid Paternity & Maternity Leave.Generous PTO package plus 2 paid floating holidays and 1 day of paid volunteer time off.Multiple benefit plans, eligible day one of employment."Live and work like a DMA Employee-Owner": We focus on work/life balance, mental health, and the overall wellness of our employees.This position is hybrid. The requirement is to be in our Fort Wayne, IN at least two times per week. Relocation assistance is not offered for this position.

Position Summary

The Senior Software Engineer will be responsible for the development of new software solutions and enhancements as well as the maintenance of existing software solutions. The Senior Software Engineer will effectively communicate with DMA users and clients to uncover immediate/future needs, will convey those results in a meaningful way, and will deliver solutions in an agile, proactive, fast-paced, client-service driven development environment.

Essential Duties and Responsibilities

Design, develop, and maintain, high-volume, low-latency applications for mission-critical systems, delivering high-availability and performanceContribute in all phases of the development lifecycleDiagnose and triage issues with software, determine and document the root causeWrite well designed, testable, efficient codeDevelop unit test cases for new features and bugsProvide technical support when neededPrepare and produce releases of software solutions and componentsParticipate in release and sprint planning sessionsSupport continuous improvement by investigating alternatives and technologies and presenting these for architectural reviewDivide tasks into quantifiable subtasks and reasonably predict the effort to complete those subtasksLead code review sessions and verify that coding guidelines and best practices are observedAssist less experienced developers with design and development tasksDevelop and document potential solutions to a given issueAssist in collecting and documenting technical requirementsDevelop high level conceptual designs, and low level technical designs, that are in compliance with specifications and best practicesDevelop technical feasibility studiesAssist in providing direction and technical expertise in design, development, and systems integrations to both developers and stakeholdersAnalyze complex technical solutions for efficiency, effectiveness, and riskPrepare functional and technical documentationEstablish realistic estimates for individual development tasks and complex technical solutionsAssist in the daily stand-up meetings, as well as quality assurance and quality control meetingsAssist with the development of user documentation and user trainingAssist in analyzing and documenting business processesWork with team members to ensure that software releases meet the defined security and quality assurance standardsWork with the business, subject matter experts, and other stakeholders to maintain a backlog, and develop a product roadmapNon-Essential Duties and Responsibilities

Perform other duties as assignedEducation and Qualifications

Bachelor's degree in Computer Science, Computer Technology or related field preferred5+ years of professional programming experience in JavaFamiliarity with software design patternsExperience with dynamic, web-based development concepts, including MVC concepts, AJAX, JavaScriptFamiliarity with Subversion, Ant, Gradle, Application Servers, Struts, Spring, Hibernate, JPA, Junit, RMI, and JDBC/SQL is a plusKnowledge of relational databases and object-relational mapping conceptsKnowledge of distributed systemsKnowledge of the typical system development life cycleAbility to manage multiple tasks and issues simultaneouslyExcellent communication skills and the ability to clearly articulate information (both verbal and written)Excellent organizational skillsExcellent listening skillsExcellent problem solving skillsProficiency with agile developmentMust be authorized to work in the U.S. without the need for employment-based visa sponsorship now or in the future. This position does not qualify for employment-based sponsorship.

#LI-JS1

#LI-HYBRID