Responsibilities:
Take an active, hands-on role in the development of new and existing features, including environment setup, code writing, and conducting code reviews, while advocating for best practices in Java development.
Take us to the next level by improving the architecture technologies to support the huge scale, anticipating growth from hundreds of clients to thousands.
Lead the implementation of technical architectures and designs for new components within our system, prioritizing high availability, scalability, and performance within a SaaS environment.
Act as a liaison between R&D teams, driving the technical backlog in collaboration with Product Management and Engineering leadership, ensuring alignment with the cross-product architecture.
Requirements:
A solid background with over 10 years of experience in Software Engineering.
A minimum of 5 years of experience in a Software Architect role.
Demonstrated expertise in crafting architectures for large-scale SaaS solutions, with a focus on scalability and performance optimization.
Strong understanding of object-oriented programming principles.
Deep knowledge of Java and proficiency in the Spring Framework.
Experience working with Amazon Web Services technologies such as EKS, SQS, and S3.
Familiarity with relational and non-relational databases including MySQL, Redis, MongoDB, and Elasticsearch.
Experience with continuous integration (CI/CD) platforms.
Nice to have:
Proficiency in Linux bash scripting and the installation of open-source platforms like CentOS and Amazon Linux.
Proficiency in troubleshooting Apache Tomcat applications and real-time server-side applications in multi-component platforms.
Understanding of SaaS-based security products.
Knowledge of the enterprise cybersecurity ecosystem and associated processes.
Soft Skills, Education, Other:
We are a small company. A successful candidate will have a desire to work as part of a small, growing team.
Ability to study new technologies fast and think outside of the box.
Ability to work in a team, communicate clearly, adapt, learn quickly, and pay attention to detail.
BSc in Computer Science (or if you know how to do the above).