Position: Senior Java Back-End Engineer (Fintech)
Company: YayPay
Experience required: 5y
English level: intermediate

5+ years of commercial software engineering experience
— Strong knowledge of Java Core / Java EE experience (11 is preferable but not required)
— Understanding and strong practical knowledge with the development of Multi-Tiered Distributed Architecture, SOA, and Microservices.
— Strong knowledge of RDBMS (MySQL is preferable but not required)
— Understanding multithreading and concurrency
— Understanding of the following technologies:
—— Spring framework (Boot, Core, Web, Data, Cloud, AOP, JDBC, Test)
—— Hibernate ORM or JooQ
—— JMS/AMQP knowledge
—— Apache Kafka
—— Web services (SOAP, REST, etc.)
—— XML/JSON
—— Maven or Gradle
—— Git

Предлагаем
— Flexible working hours
— After Covid-19 — a comfortable office in Kyiv with all the standard supplies
— A high-level (A1) corporate insurance from Uniqa
— Tax compensation
— Equipment (laptops, screens etc.)
— Educational and professional development support

Обязанности
— Write good effective and well-tested, reliable code in Java (60%)
— Perform peer code review of project codebase changes (10%)
— Create unit and integration tests for the developed features (15%)
— Collaborate and communicate effectively with other members of the development team during the Scrum meetings (10%)
— Participate (and contribute) in architecture design planning meetings (5%)
— Partner with team leads, product managers, and business stakeholders to solve business problems. This is typically accomplished by understanding business needs
— Foster a sense of ownership within the team to ensure that system failures are rapidly diagnosed and remediated

**Hiring Process**
Our Hiring process consists of several stages:
— Initial screening call with HR person (20 min)
— Test Task on coderbyte.com (3-4 hours)
— Technical Interview with YayPay Engineer (1 hour)
— Final interview with CTO (30 minutes)

О проекте
YayPay is building a cutting-edge accounts receivable management software that uses machine learning to help finance teams become revenue heroes. YayPay’s vision to help finance teams perform their most valuable work. We’re a rapidly growing company at the forefront of back-office automation, AI, and machine learning. YayPay is also one of the leaders of the industry in terms of user experience and consumerization of enterprise software.

Currently, YayPay works with 25 engineers in Ukraine, mainly located in Kyiv, Dnipro, and also in other regions of Ukraine. Due to the COVI-19 pandemic, we are fully remote in all the locations of the company, but once it gets better we expect to provide office space.

From the technology perspective, YayPay Platform is a SaaS offering, which integrates with a number of different systems, such as:
— ERP systems to pull accounts receivable data from (e.g. NetSuite, Intacct, Sage X3 etc.)
— CRM systems, like SalesForce to pull and push relevant customer information
— Payment Providers to allow CreditCard and ACH to be made through the platform
— Credit Providers like CreditSafe to pull credit information

The application currently undergoes the phase of the active new feature development — we are working on building new modules: Reporting & Analytics Module, Credit Module, Cash Application Module.

The application is built on Service-Oriented Architecture, with the use of Kubernetes and technologies around it.

The main technology stack is described below:
— Back-End: Java 11, Spring Framework, Hibernate, MySQL, Kafka, Exasol
— Front-End: VueJS and KendoUI
— Machine Learning: Python and relevant machine learning libraries are used for the ML services
— Hosting: the application is hosted on AWS, with extensive use of the native AWS services