5+ years of commercial software back-end engineering experience
— 3+ years of professional front-end software development 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 Micro-services.
— Strong knowledge of RDBMS (MySQL is preferable but not required)
— Understanding multithreading and concurrency
— 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
— 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.)
—— Maven and/or Gradle
—— Vue (better) or React
—— WebComponents, KendoUI
—— SASS / LESS
— Flexible working hours
— 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
An ability to communicate with your peers on par with your technical skill.
Happiness in collaborating with a diverse range of people of differing backgrounds and experience levels.
Self-directed and proactive in taking ownership of problems as they arise.
Experience building scalable front-ends using modern technologies.
Collaborate in a cross-functional product team which is building friendly
Write clean, high-quality, well-tested code.
Contribute to the improvement of our overall front-end development best practices.
Maintain and grow current and new products while employing systemic thinking and designs that can adapt to new customer needs.
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