Back to Job Search

Java API Lead Developer

Posted 27 days ago

Grow your career as a hands-on Java API Lead Developer with an innovative global bank in Jersey City, NJ. Long-term contract with excellent growth potential. Will be required to work onsite 2-3 days per week.  expected to be a Hands-on Software Development Leader.

Responsibilities:
•    Write good and well-tested code in Java
•    MoM messaging middleware implementation
•    SOA API middleware implementation (both REST and SOAP)
•    Write user/supporter documentation
•    Create Software Architecture Diagrams (Process Flows, UML Class Diagrams, System Deployment Diagrams, etc)
•    Development environment support (mostly automation using Jenkins CI, Bash, BitBucket)
•    Evaluate and adopt new development tools, libraries and approaches to improve delivery quality
•    Perform peer code review of project codebase changes
•    Lead a Team of Developers on various software development initiatives
•    Participate in Technical Interview Panels
•    Partner with Peer Software Development and/or Architect Leads to ensure our Platform delivers functionality on time

Qualifications:
•    BS (MS Preferred) in Computer Science or Equivalent Field.
•    7+ years of experience in industry of software development
•    5+ years of experience as Java software developer
•    3+ years of experience writing RabbitMQ, Kafka, Tibco or JMS / comparable Messaging technology (both Producers and Consumers).
•    3+ years of experience writing both REST and SOAP Web Services.
•    Expert knowledge of: Threading, Collections, Exception Handling, JDBC, Java OOD/OOP Concepts, GoF Design Patterns, MoM and SOA Design Patterns, File I/O, and parsing XML and JSON, delimited files and fixed length files, String matching, parsing, building, working with binary data / byte arrays.
•    Experience in developing distributed systems (MOM and SOA architectures)
•    Expert Knowledge of System Design including mentioned design patterns above, and ability to create Architectural Diagrams including UML in tools such as Visio.
•    Experience in developing distributed systems
•    Up-to-date overview of modern software development tools and techniques
•    Java concurrency (practical experience and good knowledge)
•    Good knowledge of SQL (Oracle and PostgreSQL dialects are preferable)
•    Good knowledge of JAX-RS / REST and JAX-WS SOAP Web Services
•    Good knowledge of JAXB / XML and JSON
•    Good knowledge of both horizontal and vertical scaling of applications (Multi-Process and Multi-Threading).
•    Experience designing and implementing ETL Processes
•    Knowledge of Metadata Concepts

Preferred experience:
•    Experience with Messaging Systems: RabbitMQ, ActiveMQ, Kafka, Tibco. IBM MQ, etc.
•    Experience with Tomcat, Jetty, Apache HTTPD
•    Able to work with build/configure/deploy automation tools
•    Linux user
•    Kubernetes and Docker
•    Spring and Spring Boot
•    Swagger YAML API Configuration
•    Autosys
•    APIm
•    Caching Technologies
•    Metadata Driven Programming
•    Messaging Systems: RabbitMQ, ActiveMQ, Kafka, Tibco. IBM MQ, etc.
•    Tomcat, Jetty, Apache HTTPD
•    Able to work with build/configure/deploy automation tools
•    Linux Ecosystem
•    Kubernetes and Docker
•    Autosys
•    APM Tools: Dynatrace, AppDynamics, etc.
•    Caching Technologies: Hazelcast, MemCached, Redis etc
•    Software Development Experience in the Financial Services Industry

About our client

Our client stands as one of the worlds most renowned global banks and trusted brand with over 200 years of continuously evolving financial services. Its teams provide unique insights to more than 200 million clients and enable progress all over the world. While growing your career, you will work alongside some of the smartest minds in the industry who are excited to share their knowledge and to learn from you.