Your Role and Responsibilities
We’re looking for a Software Developer to join our platform team.
Specific responsibilities will include:
- Work as part of an agile team, accurately estimating and then delivering complex features.
- Develop microservice-based application components.
- Work extensively with Java and cloud native tools, applying principles of object-oriented design.
- Strong Java development and debugging skills
- Test driven development, Design and develop automated tests to prevent regressions
- Experience with developing complex multi-threaded applications
- Self-directed, eager to learn with a desire to work in a fast paced development environment
- Build SaaS solutions.
- Provide technical leadership for end-to-end project design and development.
- Build and maintain REST API endpoints.
- Provide thorough, professional documentation of new features and software as it is developed.
- Contribute to architecture and technical design discussions and code review in collaboration with other teams.
- Consult with product management team about user needs and software requirements.
- Participate in customer calls and provide assistance to support team to help address technical issues.
- Communication, organization, critical, analytical thinking and research skills are critical in this role.
The tech stack includes: Java, Docker, Kubernetes, OpenShift, Consul, Kafka, Protobuf/gRPC, REST, React, Redshift and ThoughtSpot.
Required Technical and Professional Expertise
- 5+ years of experience
- Thorough understanding of data structures, algorithms, and object-oriented design, Databases, Security principles, including authentication, authorization, certificates, RBAC, etc.
- Demonstrated strong Java development and debugging skills.
- Demonstrated academic coursework or internship experience:
– in design and developing software,
– in architecture and modeling of components,
– in web-based applications. - Coursework, other academic project or internship experience with Java, algorithms, SQL Databases, object-oriented design, web application development, distributed systems and micro services, principles of cloud computing, containers and kubernetes, linux operating system.
- Background with web application stack and common design patterns in web framework
- Must have strong communication and team working skills.
Preferred Technical and Professional Expertise
- Experience on working in kubernetes based application stack – microservices
Experience in go and python - Understanding the CI-CD pipeline and how maven + git work
- Experience with Linux systems