About The Position

Translate complex business requirements and functional specifications into robust and intuitive user interfaces and software solutions. Partner with Product teams to understand business needs and functional specifications. Collaborate with cross-functional teams to ensure specifications are converted into flexible, scalable, and maintainable solution designs. Evaluate project deliverables to ensure they meet specifications and architectural standards. Work as part of development teams to design and build complex solutions, ensuring alignment with the architecture blueprint, standards, target state architecture, and strategies. Coordinate, execute, and participate in component integration (CIT), system integration testing (SIT), and user acceptance testing (UAT) to identify and resolve application errors and ensure quality software deployment. Possess a solid grasp of software design patterns and approaches. Understand application-level software architecture and make technical trade-off decisions. Solve complex architecture/design and business problems, developing extensible solutions. Work to simplify, optimize, and remove bottlenecks. Provide mentoring and guidance to junior engineers, offering feedback and direction on specific engineering tasks. Maintain application hygiene and address any Risk & Control items. Work closely with Project Managers, Business Analysts, and Operational users/Product managers to deliver projects. Work independently on project deliverables, articulate issues/challenges, and proactively communicate risks. Handle code releases in various environments.

Requirements

  • 6-10 years of hands-on experience in Java backend development (Java 8+ preferred), including deep understanding of core Java concepts, object-oriented programming, data structures, algorithms, and design patterns.
  • Experience with Spring Boot, Spring JPA, Spring Cloud, JDBC, Hibernate, REST, and Maven is essential.
  • Demonstrated proficiency in Java 8+ features (lambda expressions, streams, functional interfaces) and functional programming paradigms is required.
  • Proven experience transforming data between various formats such as XML, FXML, SWIFT, JSON, and CSV, utilizing relevant libraries and tools.
  • Extensive experience with microservices architecture and related technologies, including Docker, Kubernetes/OpenShift, and cloud computing platforms (AWS, Azure, GCP).
  • Strong understanding of microservice design patterns, principles, and best practices.
  • Experience implementing Kafka consumers, producers, and streaming applications.
  • Experience with secure file transfer protocols (SFTP) is required.
  • Solid understanding of both SQL and NoSQL databases.
  • Familiarity with relational databases (e.g., Oracle, PostgreSQL) is required.
  • Experience working in an Agile environment using TDD/BDD best practices.
  • Proficiency with JUnit and Mockito for unit and integration testing is essential
  • Good knowledge of DevOps principles and CI/CD practices.
  • Experience implementing RESTful and GraphQL APIs, including API design, development, and security best practices.
  • Proficiency with Git/Bitbucket for version control is required.
  • Strong communication, analytical, problem-solving, and leadership skills are essential.
  • Demonstrated ability to take ownership, collaborate effectively, and communicate technical concepts clearly.
  • Bachelor's degree/University degree or equivalent experience

Nice To Haves

  • Python programming experience is a plus.
  • Familiarity with other messaging technologies like TIBCO EMS and IBM MQ is highly desirable.
  • Hands-on experience with MongoDB is preferred, and experience with other NoSQL databases is a plus.
  • Experience with Kafka Streams and Apache Flink is a significant advantage.
  • Experience with tools like Jenkins, TeamCity, IBM UrbanCode Deploy, and SonarQube is highly desirable.
  • Experience with WebSocket implementations is preferred.
  • Master's degree preferred

Responsibilities

  • Translate complex business requirements and functional specifications into robust and intuitive user interfaces and software solutions.
  • Partner with Product teams to understand business needs and functional specifications.
  • Collaborate with cross-functional teams to ensure specifications are converted into flexible, scalable, and maintainable solution designs.
  • Evaluate project deliverables to ensure they meet specifications and architectural standards.
  • Work as part of development teams to design and build complex solutions, ensuring alignment with the architecture blueprint, standards, target state architecture, and strategies.
  • Coordinate, execute, and participate in component integration (CIT), system integration testing (SIT), and user acceptance testing (UAT) to identify and resolve application errors and ensure quality software deployment.
  • Possess a solid grasp of software design patterns and approaches.
  • Understand application-level software architecture and make technical trade-off decisions.
  • Solve complex architecture/design and business problems, developing extensible solutions.
  • Work to simplify, optimize, and remove bottlenecks.
  • Provide mentoring and guidance to junior engineers, offering feedback and direction on specific engineering tasks.
  • Maintain application hygiene and address any Risk & Control items.
  • Work closely with Project Managers, Business Analysts, and Operational users/Product managers to deliver projects.
  • Work independently on project deliverables, articulate issues/challenges, and proactively communicate risks.
  • Handle code releases in various environments.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service