Posted: Wed, 29 Apr 2020 15:30:13 -0400
Job Type: Direct
Skill Set: Mid-Senior level (4-10 yrs)
The Senior Software Developer must be comfortable with both front and back end programming and will participate in projects from inception to final product. The Senior Software Developer will perform coding, testing and builds, design and develop reusable APIs, recommend changes to existing applications, and will produce detailed technical documentation. The Senior Software Developer will be tasked with designing and developing integrations between the company's core systems, participate in code review sessions and debug and resolve technical production issues. The Senior Software Developer will collaborate with team leads and architects in the specification of system architecture, while contributing to application architecture and database design. The Senior Software Developer must be passionate about technology and industry trends and as such evaluate and recommend tools, technologies, and processes to ensure the highest quality product platform.
• Bachelor’s Degree in Computer Science, Information Systems, or Software Engineering.
• Minimum of 8 years’ experience in the field of software design and application development utilizing Java technology stack. Prior banking/financial services experience highly preferred.
• Strong experience in one or more of the following frameworks: Spring MVC, Spring Boot, Spring Security, JPA, Hibernate.
• Strong experience in creating and consuming SOAP/Restful Web services, micro-services, or mini-services using XML and JSON.
• Strong experience in Design Patterns, Object Oriented Programming, multithreading and SSL Security.
• Experience in database design and development using Microsoft SQL or similar database.
• Experience with DevOps CI/CD and tools like GitLab, Nexus, Docker containers.
• Experience working in an Agile environment.
• Experience with building Microservices architecture highly preferred. Kafka experience is preferred.
• Experience building cloud-native Java applications (Azure is highly preferred).
• Experience with PWA and developing applications for mobile devices preferred.
• Proven ability to successfully deliver high-quality, complex systems, independently as well as in a team environment.
• Strong analytical/problem solving skills
• Must have excellent oral and written communications skills.
• Must possess strong time management and organizational skills to be able to successfully deliver multiple projects simultaneously within slated timeframes.
• Experiences with big data technologies such as Data Factory, Data Bricks, Spark, and Cosmos DB are preferred.
Physical Demands: The physical demands described below must be met by an Associate to successfully perform the essential functions of this job.
• Incumbent will be required to stand for extended periods of time.
• Incumbent may be required to sit for prolonged periods of time.
• Dexterity is mandatory as this job requires frequent use of hands and fingers.
• The incumbent will also be required to talk, hear, see, read and write.
• Specific vision abilities required by this job include close vision, distance vision, depth perception and ability to adjust focus.
Cognitive Demands: The cognitive demands described below must be met by an Associate to successfully perform the essential functions of the job.
• This position requires adaptability, assessing, analyzing, calculating, dependability, memorizing, good judgment, stress control, prioritization, social skills and speaking.
• This position requires comprehension, organization, reasoning and decision-making, communication and mathematical ability.
• Incumbent must possess the capability to understand, remember, and apply oral and/or written instructions or other information, organize thoughts and ideas into understandable terminology, prioritization of own work schedule, apply common sense in performing job duties and making decisions which have impact on immediate work unit.
• Incumbent must be able to understand and follow basic instructions and guidelines, complete routine paperwork, use existing form letter and/or conduct routine oral communication, communicate with individuals using a telephone, hear and speak effectively on the telephone, express or exchange ideas by means of spoken word, communicate orally with others accurately and quickly, at an audible level that others can hear.
• Incumbent must also have the ability to count accurately and the ability to add, subtract, multiply, divide and record, balance and check results for accuracy.