The Software Engineer IV develops, implements, and maintains software solutions that enable business operations to realize company goals & objectives. The incumbent performs analysis, design, coding, debugging, testing, and support of the most complex and/or larger impact software application systems. May be assigned to develop new applications/systems, enhance/upgrade existing systems or provide production support. He/she provides mentoring and guidance to less experienced peers, has authority to assign work tasks and review work products of lower level peers. The incumbent assists the department manager/director in developing processes and standards.
- Essential RESPONSIBILITIES and ACCOUNTABILITIES
- Partners with Agile Program Manager (APM), Digital Product Manager (DPM), and Business Systems Analyst (BSA) to accurately capture stakeholder requests and system specifications and translate them into engineering artifacts, which typically include design specifications, source code, test scripts and test results.
- Consults with enterprise architects to ensure that the engineering realization is in accordance with Enterprise Architecture principles and software development best practices.
- As part of Agile teams, completes complex software development work involving creative application of design, coding and debugging methods and techniques. Keeps Agile team and APM updated on product status.
- Coordinates schedules and timelines with testers to ensure that all software components are tested adequately. Proactively collaborates with testers to develop action plans and solutions to address scheduling issues that arise.
- Utilizes high level software development expertise to provide guidance to stakeholders on devising effective and efficient approaches to achieve project and program objectives.
- Manages engineering risks by proactively tracking and communicating issues, devising methods to mitigate them and collaborating with involved parties to implement solutions.
- Leads architecture and design discussion. Interface with other project and program areas to coordinate interdependencies and resolve issues.
- Provides input to APM/DPM in creation of Product Roadmap, High Level Estimates
- Supports business units in the resolution of in-depth user questions and issues.
- Maintains a working knowledge of new technology and software engineering standards & practices.
- Collaborates with IT management to define and develop documentation & engineering artifact standards, guidelines, processes, and templates.
Knowledge & Skills:
- Expert level knowledge of theoretical and practical application of highly specialized software engineering best practices methods and techniques.
- Extensive experience in developing software applications on the assigned software platform or technology
- Extensive knowledge of source code change management and related tools.
- Knowledge and experience using Agile software development principles, process and tools.
- Advanced knowledge of Integrated Software Development Environments (IDE) relevant to assigned technology.
- Advanced analytical, problem solving and organizational skills.
- Excellent interpersonal, and written and oral communication skills.
- Strong customer service skills in order to provide end user/business owner systems support.
- Technology Experience and Expertise
- Experienced in scalable, high-availability back end technologies Oracle, SQL Server and PostgreSQL
- Experience with non-relational database technologies preferred such as Memcached, MongoDB, Redis
- Knowledge and development experience with common frameworks such as Angular or ReactJS.
- Experience with Insurance / Reinsurance Systems and Data
- Strong understanding of server-side software, scalability, performance, and reliability skills
- Understanding of continuous delivery tools like Chef, Puppet, Salt
- Understanding of continuous integration and deployment tools like Octopus deploy, Jenkins
- Proficient in: Spring, Spring Boot, and Hibernate JPA.
- Knowledge and experience with a rules engine such as JBoss Rules or iLog is required.
- Knowledge and experience with APIs and API development with microservices is required.
- Experience with container orchestration tool such as Docker Swarm or Kubernetes (Openshift) is nice to have.
- Knowledge of messaging systems such as IBM MQ, ActiveMQ, Kafka, or NATS is nice to have.
- Knowledge of blockchain technologies such as Ethereum is nice to have.
- Knowledge of AWS development and deployment is nice to have.
- Excellent communication skills:
- Excellent command of the English language, i.e. Ability to write and understand the written documents, email and other forms of electronic communications.
- Ability to discuss, articulate and simplify technology to non-technical people.
- Required knowledge and skills would typically be acquired through a Bachelors degree in computer science, business, or related field plus 8 or more years of related experience.
Location: Remote but office is in Raleigh, NC
Vertex Solutions Inc is an Equal Opportunity Employer and does not discriminate on the basis of race, color, creed, national origin, ancestry, religion, age, citizenship, sex, marital or veteran status, disability or handicap, genetics, sexual orientation or any other basis prohibited by applicable law