Researches, designs, develops, tests and maintains Kemper's Line-of-Business Software Applications applying principles and techniques of computer science, engineering and mathematical analysis. Works closely with Software Architects and business units in the definition of solutions. Works independently on tactical/long-term assignments and in the development of system components.
- Analyzes and defines functional, non-functional and business requirements for software development.
- Mentors development staff in the art of requirements gathering.
- Designs and develops complex software applications and model relational databases both independently and as part of a team.
- Utilizes proven understanding of software applications and infrastructure architecture through production implementations.
- Uses programming & technical skills in various languages and products currently used by the company as specified for the position as well as languages and products that are common for the industry.
- Researches and recommends new software products.
- Utilizes Tomcat/JBossEAP, Java, Spring, DB2/MS SQL Server/Oracle, SQL, Angular/SpringMVC/JSF, Web Services/SOAP/REST, .Net, SpringBoot, and XML/JSON.
- Writes unit tests and performs integration testing to ensure high quality applications that meet business requirements.
- Mentors development staff in the art of test-driven development.
- Maintains an understanding of various deployment methods and tools and writes scripts and/or procedures for efficient processes.
- Demonstrated understanding of systems, database and networking and mentors others.
- Proposes solutions within the expectations of common architectural principles.
- Performs other duties as assigned.
- Regular predictable attendance is required.
- Master's degree in related area and 3 years of experience. Those with a Bachelor of Science degree in Computer Engineering, Computer Science or a related area of study and 5 years of experience may be considered.
- Ability to articulate Object Oriented Concepts and have experience in Software Development Life Cycle.
- Proven knowledge in various tools and frameworks used by the Company such as Eclipse, Spring, SpringBoot, Tomcat, REST, Angular. Proven record of new application development and the ability to perform work independently and;/or leading small teams.
- Proven support and maintenance of software applications and cross training of others on named solutions.
- Has or quickly develops insurance knowledge in topics of Policies, Agents, Claims and Product as well as Business knowledge in Operations, Finance and Marketing/Sales.
- Good communication skills including presentation and written documentation.
- Highly motivated and willing to take initiative.
- Demonstrated success in working well in a team and collaborative environment.
- Highly adaptable to change and able to recommend viable solutions to problems.
- Judgment must reflect the employee's experience level in software development.
- Experience in personnel management a plus.
- Able to mentor and coach software developers and team members.
Apex Systems is an equal opportunity employer. We do not discriminate or allow discrimination on the basis of race, color, religion, creed, sex (including pregnancy, childbirth, breastfeeding, or related medical conditions), age, sexual orientation, gender identity, national origin, ancestry, citizenship, genetic information, registered domestic partner status, marital status, disability, status as a crime victim, protected veteran status, political affiliation, union membership, or any other characteristic protected by law. Apex will consider qualified applicants with criminal histories in a manner consistent with the requirements of applicable law. If you have visited our website in search of information on employment opportunities or to apply for a position, and you require an accommodation in using our website for a search or application, please contact our Employee Services Department at firstname.lastname@example.org