Position: Java Software Engineer
Company: Forte Group
Category: Java
Experience required: 5y
English level: upper

As a Software Engineer, you will contribute to the design, development, and deployment of state-of-the-art digital platforms.

**Responsibilities:**
● Competent to perform all programming, project management, and development assignments without close supervision; normally assigned the more complex aspects of systems work
● Works directly on complex application/technical problem identification and resolution, including responding to off-shift and weekend support calls
● Works independently on complex systems or infrastructure components that may be used by one or more applications or systems
● Drives application development focused around delivering valuable business features
● Maintains high standards of software quality within the team by establishing good practices and habits
● Identifies and encourage areas for growth and improvement within the team
● Communicate with end-users and internal customers to help direct development, debugging, and testing of application software for accuracy, integrity, interoperability, and completeness
● Performs integrated testing and customer acceptance testing of components that requires careful planning and execution to ensure timely, quality results

**Qualifications:**
● Five plus years of experience in designing and developing software applications in Java or Scala OR at least three years of experience in Java or Scala with a master’s degree
● Proven experience in some of the following:
- Designing, developing, deploying, and maintaining software at scale
- Developing software applications using relational and NoSQL databases
- Application architectural patterns, such as MVC, Microservices, Event-driven, etc.
- Deploying software using CI/CD tools such as Jenkins, GoCD, Azure DevOps, etc.
- Deploying and maintaining software using public clouds such as AWS or Azure
- Working within an Agile framework (ideally Scrum)
● Strong understanding and/or experience in some of the following:
- Batch or stream processing systems such as Apache Spark, Flink, Akka, Storm
- Message brokers such as Kafka, Rabbitmq, AWS SQS, AWS SNS, Apache ActiveMQ, Kinesis
- Experience designing well-defined Restful APIs
- Experience writing API proxies on platforms such as Apigee Edge, AWS API Gateway, or Azure API Gateway
- Hands one experience with API tools such as Swagger, Postman, and Assertible
- Test-driven development and behavior-driven development
- Hands-on experience with testing tools such as Selenium and Cucumber and their integration into CI/CD pipelines
- Datastores such as MongoDB, Cassandra, Redis, Elasticsearch, MySQL, Oracle
● Must demonstrate a solid knowledge of computer science fundamentals like data structures and algorithms.
● Ability to work under pressure and within time constraints
● Passion for technology and an eagerness to contribute to a team-oriented environment

**We offer:**
● Experience working with colleagues locally and abroad
● Opportunities for self-realization
● Friendly team and enjoyable working environment
● Professional and corporate events
● Social package: professional & soft skills trainings, medical & family care programs, sports
● English classes in the office with a dedicated teacher