Job Location
Downtown Toronto (3 days work from office)
Job Description
As a Senior Java Software Engineer, you will be responsible for designing, developing, and maintaining high-performance applications using Java and the Spring Boot framework. You will work closely with cross-functional teams to deliver innovative software solutions that meet our clients\' needs.
Mandatory Skills
- Java and Spring Boot - 8+ years in Java and Spring Boot for developing RESTful APIs and microservices
- SQL - SQL experience for writing queries, stored procedures, and performance tuning in relational databases (Oracle, SQL Server, PostgreSQL)
- Maven/Gradle, Jenkins, Git/Bitbucket - Understanding of CI/CD tools and processes
- Knowledge of API integration and coding best practices, including secure data exchange and error handling
- Familiarity with cloud platforms (Azure or AWS) for deployment and integration
- Ability to lead technical discussions, mentor developers, and provide constructive feedback
Qualifications
- More than 8+ years of proven experience as a Java Developer, with strong expertise in Spring Boot.
- Strong understanding of object-oriented programming principles and design patterns.
- Experience with databases such as MySQL, PostgreSQL, or MongoDB.
Job Responsibilities
- Develop, test, and maintain full stack applications using Java and Spring Boot.
- Collaborate with cross-functional teams to define and implement new features.
- Ensure the performance, quality, and responsiveness of applications.
- Identify and correct bottlenecks and fix bugs.
- Document development processes, coding standards, and project requirements.
- Participate in code reviews to ensure adherence to best practices and coding standards.
- Stay up-to-date with emerging technologies and industry trends.
Leadership
- Establishing project specifications and technical direction.
- Overseeing software quality and system modifications.
- Guiding team members with troubleshooting technical issues.
- Conducting comprehensive assessments to develop solutions.
- Lead the software development team in creating and maintaining software applications and systems.
- Analyze client requirements and collaborate with cross-functional teams.
- Ensure the successful execution of software projects, meeting client expectations and driving innovation in software development.
#J-18808-Ljbffr