Senior Software Engineer - Java
syncron
Job Description
-
Designing, optimizing, and performing performance tuning for applications to achieve low latency and improved scalability.
-
Developing across the full stack of web technologies — including persistence, services, platform, and performance — with a focus on delivering great user experiences.
-
Implementing new features in Java and Kotlin, while contributing to significant restructuring and architectural changes.
-
Delivering maintainable, robust, and testable code.
-
Designing and implementing software that is simple, intuitive, and easy to use, with a platform development mindset to solve real-world problems.
-
Collaborating with test engineers to define and write automated and manual tests to deliver fully tested, high-quality services.
-
Collaborating with both technical and business teams to understand requirements and develop solutions using an agile development process.
-
Driving a high standard of excellence for service scalability and performance.
Tech stack:
Java21, Spring (Web, Security), Spring Boot, Hibernate, Kotlin, PostgreSQL, Aurora DB, Hazelcast, Maven, Docker, AWS (S3, EC2,Batch)
Who you are?
-
8+ years of development experience, 6+ years of Java and web technology experience.
-
3+ years of hands-on experience in designing and developing scalable, well-tuned and highly available solutions.
-
Excellent command of modern Java, Maven, Spring Boot, JPA/Hibernate, Docker.
-
Experience in Angular/TypeScript, and database design with a good understanding of application development principles.
-
Experience with RESTful web-services and AWS.
-
Experience with a variety of database systems, both relational (PostgreSQL) and NoSQL
-
Experience in building and maintaining cloud-hosted services preferably AWS
-
Knowledge of writing infrastructure as code using Cloud Formation or Terraform.
-
Ability to effectively communicate product architectures, design proposals and negotiate options at senior management levels.
-
Being self-driven in a remote and geographically distributed team.
-
Keen interest in understanding complex domains
-
[Nice to have]: Experience with any non-Java JVM language.
-
[Nice to have]: Interest in functional programming
-
[Nice to have]: Experience with AWS services (ECS, Bedrock, Lambda, Batch, RDS).
-
[Nice to have]: Experience with Hazelcast.
-
[Nice to have]: Experience with GraphQL.
-