Position: Middle Backend Software Engineer (Java/Kotlin) for Solar Plant Asset Management Application
Company: Brightgrove
Category: Java
Experience required: 3y
English level: upper

Our Customer is one of the world’s most trusted independent developers and providers of professional monitoring systems and plant controllers for solar systems and system portfolios.

**About The Customer**
Our Customer is one of the world’s most trusted independent developers and providers of professional monitoring systems and plant controllers for solar systems and system portfolios. The wealth of experience makes them a pioneer and a key player in our technology-agnostic solutions for precise PV system monitoring and reliable grid integration and has earned the client a stellar reputation in the industry. They energize the worldwide transition to solar energy by providing planning & commissioning of monitoring solutions, as well as technical advisory services and worldwide solar power forecasting. 

Solar energy has a future. It is one of the renewable energies with the highest growth rates worldwide. Our goal is to shape this future and promote a clean energy supply in a sustainable manner. For this, we need a team of highly qualified and motivated employees.

**About the Project**
Asset management is the ongoing management of financial, commercial, and administrative tasks necessary to ensure optimal financial performance of a single renewable energy plant or a portfolio of plants.

This project is initiated for the implementation of software as a service solution (SaaS) to help proactive financial asset manager in the continuous improvement of the managed assets.

**Project tech stack:**
Infrastructure: Container-based,  Kubernetes
Data Storage and Access: Relational: MySQL, NoSQL: MongoDB, Key-Value: Redis Object, Storage:minio, OLAP: Clickhouse
Messaging: RabbitMQ, Streaming ideally via Kafka
Backend: Kotlin / Java / Springboot / Ktor
 Typescript / Nest / 
Python for Machine Learning
Frontend: Typescript, Angular
APIs: Rest (Swagger / OpenAPI) AsyncAPI, 
gRPC,  GraphQL

**About The Team**
The team currently consists of Project Lead, Technical Lead, UI/UX Lead, DevOps Lead, and a QA Lead on the client side, and for now, we are planning to extend the team with 5-6 Developers and a Scrum Master in Ukraine. The whole Team will work together following agile software development practices as a self-organizing and cross-functional unit.

**Responsibilities**
-Work on the latest projects in our cloud development team
-Solve complex problems and build global quality products
-Be the key figure in the development cycle, from specification to development to deployment
-Work together with a great international team
-Be innovative and have an active influence on the technologies used in the development process

**Candidate Requirements**
- 3+  years of professional web development experience
- Strong experience with programming languages like Kotlin and Java 
- Experience with GIT and CI/CD (Nice to haves: Scripting languages for CI, Java, Kotlin, or Python)
- Need for high code quality and engineering best practices
- Ability to make own decisions, recognize and assess new features
- You love to learn and constantly improve yourself 
- You are a pragmatic developer and know what is needed to complete projects
- Level of English at least  Upper-Intermediate

**Steps of interview:**1 tech internal interview ➤ 1 client interview ➤ offer