- Requirements Elicitation, Understanding, Analysis, & Management: Understand the requirements/stories, and perform the appropriate gap analysis for a platform/technology.
- Participation in Sprint Planning and Sprint Status: Participate in sprint planning meetings by estimating the tasks to design, build, and develop test software. Attend daily huddles to report progress and barriers to progress.
- Design/Development/Development Testing: Create the design for a given technology that effectively meets the requirements/stories. This will involve ensuring the design integrates with other platforms/technologies. The design may be done directly in the code itself. Build and development test the software according to the functional specifications, design, maintainability, and coding and efficiency standards. Complete development tests within each sprint according to acceptance criteria and system component integration needs.
- Testing & Debugging: Work closely with the Solution Quality Analysts by providing debugging and testing assistance as needed to meet sprint objectives.
- Documentation and Deployment: Create technical documentation (assets) in the code per coding standards and assist as needed in the documentation creation for the products’ customers. Create the artifacts needed to ensure the software is migrated efficiently through the needed environment life cycles.
- Minimum Experience of at least 2 years of full lifecycle Java development.
- Bachelor’s degree (with preferred concentrations in Computer Science, MIS, Engineering) or equivalent work experience.
- Master’s Degree in related areas a plus.
- Significant experience in two or more of the following core technology areas.
- Java/J2EE, Spring, Spring Boot.
- System integration using synchronous and asynchronous protocols including SOAP, REST, IBM MQ, JMS, Kafka, or other distributed streaming technology
- Microservices concepts and frameworks.
- HTML5 / Angular / CSS / Node.
- Knowledge of data formats, including JSON, XML, XSLT, and CSV.
- Knowledge of REST frameworks with focus on API development.
- Ability to develop code using IDEs such as Visual Studio Code, IntelliJ IDEA, Eclipse.
- Scripting, markup and "meta" languages.
- Database concepts, database design and data modeling (Relational and noSQL database).
- Cloud services (IaaS, serverless) and providers (AWS/Azure/Google).
Working knowledge of operational needs for enterprise software solutions, including:
- Performance / scalability.
- Agile processes.
- Able to identify “good-fit” technologies, and demonstrate their adaptation effectively.
- Able to clearly communicate complex technical concepts to a non-technical audience.
- Developing new functionality on existing software applications, web properties, and mobile applications.
- Enhancing online reports and dashboards.
Areas of expertise may include some or any of the following:
- Knowledge of document management/composition, customer communications management (CCM), print/fulfillment, and relevant technologies/tooling is a plus.
- Experience with Application Programming Interface (API).
- UPoint application development.
- Mobile application development.
- Building quality and high-performing functionality primarily using Angular.
- Experience developing for defined contribution (or other wealth) plans (401k) a plus.
- Full-Stack Development (strong on Back-end).
- Core Java (Java/J2EE, Spring, Spring Boot).
- Any Distributed Streaming: SOAP, REST, IBM MQ, JMS, Kafka, etc.
- Cloud Services.
- Wealth Benefits Domain.
- Doc Management/Composition, Customer Communications (CCM), Print/Fulfillment.
- Mobile Applications.
The Developer Analyst is responsible for complete design, development and development testing for software projects. This developer may also be responsible for coaching other team members and performing quality reviews of the work of other team members. Deep technology and domain specialty knowledge is essential but learning agility and versatility to learn technology outside his/her specialty to improve delivery are also important. The Developer Analyst should have a team-first mentality and be willing to help other team members in order to improve the delivery success.