Job Description, Required Skills, Education, Experience:
Design, develop, document, test, and debug new and existing software systems and/or applications for market sale or large-scale proprietary software for internal use. Use Java programming language and related software development technologies such as Java 2 Enterprise Edition (J2EE), JavaServer Pages (JSP)/Servlets, or JavaServer Faces (JSF). Serve as technical expert on development projects. Participate in full development life cycle including requirements analysis and design. Write technical specifications based on conceptual design and stated business requirements. Support, maintain, and document software functionality. Identify and evaluate new technologies for implementation. Analyze code to find causes of errors and revise programs as needed. Participate in software design meetings and analyze user needs to determine technical requirements. Consult with end-user to prototype, refine, test, and debug programs to meet needs. Career-Level position within field. Considered highly skilled and proficient in discipline. Conducts complex work important to the organization. Works under minimal supervision with wide latitude for independent judgment. Typically requires six to nine years of relevant experience or equivalent combination of experience and education.
Preferred Skills, Education, Experience:
The developer will perform system analysis, design, and development on Java /j2ee applications using spring-boot applications. The developer will be expected to be proficient in working on distributed application based on a low latency, real-time, messaging framework using state of the art technologies based around a technology stack that includes Spring/messaging framework, RESTful webservices, cache management, RDMS and exposure with spring-boot applications.
Analysis: Assistance as required in the requirements analysis for the new system; Design: Own the design, development and delivery of technical components within the technical specification and architectural design documentation; Programming: Hands on design & development of messaging components and mapping topics/Queues, in-memory storage and data processing; Performance tuning to ensure acceptable application performance.
The senior developer role is part of the shared enterprise business services team. Primarily, this team creates and maintains web-services that are shared across multiple applications and lines of business. These business capabilities perform orchestration, composition, transformation, and other discrete business functions. The group is actively engage with architecture and other technology teams to develop the next generation of services.
• Perform system design and specification development, program logic and flow-charting, testing, debugging, and documentation
• Review existing Listeners and modernize the messaging architecture to support realtime analytics and reporting capabilities.
• Maintain source code using SVN/Bit bucket and update application documentation.
• Build generic configurable java components to various middleware services.
• Need to have a good understanding of messaging concepts and maintain Restful web-services.
• Review application dependencies and enhance user experience simplifying the java application design flows.
• Must be proficient in using java design patterns and experience in RDBMS and exposure to NoSQL databases.
• Works independently and collaboratively on moderate to highly complex programming tasks. Provides analysis of problems and recommends solutions
• Prepares program specifications and develops coding logic flowcharts
• Participates in client interactions, possibly with more senior team members, to develop system solutions to business problems
• Identify various application performance enhancements and support leadership with the development roadmaps and meet project timelines.
• Works within established procedures to develop, test, implement, and maintain application software.
• Mentors more junior developers and may lead projects as needed.
• Recognized as a SME on a particular system, aspect or module of a system.
• 7+ years’ experience with Java 8, Spring/Struts framework and exposure to messaging (Kafka, MQ) Enterprise Search framework.
• Experience in building Restful web services using Jersey and spring frameworks.
• Programming experience with Java and relational databases (PostgreSQL, Oracle, SQL Server).
• 7+ or more years’ experience with Object Oriented Analysis, Design, Unit Testing and continuous integration
• Must have 5+ year experience in building J2ee based application using Spring/Struts and any other framework.
• 3+ years have experience working with SVN/Bit bucket and exposure to Jira in agile env.
• Must be proficient in using java design patterns and experience in RDBMS/NoSQL databases.
• Need to have bachelor’s degree in computer science.
• Basic level of experience with Unix/Linux, Windows and shell scripts.
• Exposure to new technologies like Kafka, Spark and other streaming framework.
• Exposure to real time, high volume transaction systems.
Apex is an Equal Employment Opportunity/Affirmative Action Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, age, sexual orientation, gender identity, national origin, disability, protected veteran status, 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 844-463-6178