Senior Software Engineer - Full Stack
- Toronto, ON, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Posting language
- English
- Posted
Original job description
What you'll do:
- 6+ years of software development experience, preferably with Project Lead experience
- Takes personal responsibility for quality and maintainability of the product and actively identifies areas for improvement
- Identifies problems/risks of own work and others
- Understanding of OWASP
- Possesses empathy with the user of the software they are producing and uses that empathy to guide decision-making
- Identifies viable alternative solutions and presents them
- SDLC processes are followed, including adopting agile-based processes/meetings, peer code-reviews, and technical preparations required for scheduled releases
- Partners with product and analytics and drive requirements that take into account all parties' needs
- On-boards and mentors less experienced team members
- Develops sophisticated software with minimum supervision
- Makes complex contributions to technical documentation/knowledge base and team/engineering presentations
- Strong ability to mentor and guide junior developers
- May have role in supervising others or leading small to moderate projects
- Fixes complex bugs and demonstrates advanced debugging skills
- Produces quality API documentation and ensures practices are followed
- Contributes to system design sessions in their area of specialty
- Expanded Code review responsibilities
- Performs advanced refactoring
- Gives constructive feedback to team members
- Learn industry jargon and business concepts to better understand the challenges our technology is designed to solve
- Raises roadblocks and updates estimations as needed
- Ability to communicate complicated concepts to junior staff
- Bachelor’s degree in Computer Science or related field, or equivalent years’ experience
- Minimum of 6 years’ professional experience in Java development
- Hands-on experience with React and JavaScript
- Experience working in OS X and Linux environments, Spring, AWS, Microservices, SQL, NoSQL, GIT. Experience working in a scrum and DevOps environment
- Good understanding of agile application development lifecycle.
- Experience Designing and building JSON or REST services, experience working with 3rd party APIs, AWS APIs, Docker or other containers, large-scale or distributed web applications, Test Driven Development and functional testing
- Extensive understanding of various design patterns and OOP paradigm
- Extensive experience in RESTful and security of API design
- Intermediate level in at least 1 OOP language
- Intermediate knowledge in react native and react
- Intermediate knowledge in Javascript
- Intermediate knowledge in nodejs
- Extensive knowledge how NPM package & webpack lifecycle works
- Experience in IOS/Android development
More about this job
Responsibilities
Lead the development of sophisticated full-stack software while ensuring product quality and maintainability. Mentor junior developers and collaborate with product and analytics teams to drive technical requirements and system design.
Requirements
Requires a Bachelor's degree in Computer Science and at least 6 years of professional experience in Java development. Proficiency in React, JavaScript, AWS, and microservices architecture is essential.
Skills
- Java
- React
- JavaScript
- Spring
- AWS
- Microservices
- SQL
- NoSQL
- Node.js
- React Native
- REST API
- Docker
- TDD
- Git
- OOP
- Agile
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Consulting
Keywords
- Java
- React
- JavaScript
- Spring
- AWS
- Microservices
- SQL
- NoSQL
- Git
- Scrum
- DevOps
- JSON
- REST
- Docker
- Test Driven Development
- OOP
- React Native
- Node.js
- NPM
- Webpack
- iOS Development
- Android Development
- OWASP
- SDLC
- API Design
- Refactoring
- Distributed Systems
- Full Stack
- Software Engineering
- Technical Documentation