DESCRIPTION:
Duties: Design, develop and implement software solutions. Solve business problems through innovation and engineering practices. Involved in all aspects of the Software Development Lifecycle (SDLC) including analyzing requirements, incorporating architectural standards into application design specifications, documenting application specifications, translating technical requirements into programmed application modules, and developing or enhancing software application modules. Identify or troubleshoot application code-related issues. Take active role in code reviews to ensure solutions are aligned to predefined architectural specifications. Assist with design reviews by recommending ways to incorporate requirements into designs and information or data flows. Participate in project planning sessions with project managers, business analysts, and team members to analyze business requirements and outline proposed solutions. Anticipate dependencies with other teams to deliver products and applications in line with business requirements. Ensure that compliance standards, service level agreements, and business requirements are met.
QUALIFICATIONS:
Minimum education and experience required: Bachelor's degree in Electronic Engineering, Electrical Engineering, Computer Science, Computer Engineering, Computer Information Systems, Information Technology, or related field of study plus five (5) years of experience in the job offered or as Software Engineer, Technology Lead, or related occupation. The employer will alternatively accept a Master's degree in Electronic Engineering, Electrical Engineering, Computer Science, Computer Engineering, Computer Information Systems, Information Technology, or related field of study plus three (3) years of experience in the job offered or as Software Engineer, Technology Lead, or related occupation.
Skills Required: This position requires experience with the following: developing applications across different operating systems and performing system administration tasks, managing servers, and ensuring compatibility and performance across platforms including Linux, Unix, and Windows; participating in Agile ceremonies to deliver improvements in the Software Development Life Cycle(SDLC) and adapting to changing requirements using Agile principles; implementing services that communicate over APIs; breaking down applications into microservices to improve maintainability using microservices architecture; utilizing Apache Kafka for building data pipelines and integrating various services; orchestrating containerized applications, manage clusters, and automating deployment, scaling, and operations of application containers using Kubernetes; deploying and managing applications in cloud using AWS cloud services; Splunk for troubleshooting, security monitoring, and gaining insights from machine data; source code management using GIT; developing enterprise-level applications using J2EE technologies including Servlets, JSP, EJB, and JPA; Use Java for developing backend services, APIs, and business logic; utilizing Java frameworks and libraries for application development; writing complex queries, stored procedures, and optimizing database performance using SQL; using Bootstrap to develop web applications; developing RESTful APIs for communication between microservices and client applications; implementing SOAP-based web services for legacy systems; using JSON for data interchange between services and applications; managing project dependencies, build lifecycle, and plugins using Maven; and testing different components of application using Junit, Automated testing, Performance Testing, Regression Testing, System Integration Testing and Unit Testing.
Job Location: 880 Powder Mill Road, Wilmington, DE 19803.