Senior Software Developer (Intake Systems)
Basis:
Permanent - Full-time
Area of Interest:
Product & Software Development
Location:
Toronto, Ontario
Who we are
Who you are:
You are a skilled Senior Software Developer with extensive software design and implementation skills. You are skilled in the use of current programming languages and tools and generally act as a team resource on custom development initiatives. You find reward in building robust software that can function 24/7 with no down time. If you love technology, are passionate about creating scaleable software, SDKs and APIs and are keen on contributing to open source projects - we would love to hear from you.
What you'll do:
The Senior Software Developer is a key player in building robust and efficient back-end services that power various applications. They utilize a range of technologies, including cross-platform .NET and caching and storage technologies, to develop the core logic and data management layers. Additionally, this role involves creating analytical and performance monitoring tools to analyze and interpret production data. Familiarity with cloud-based solution development, such as Google Cloud Platform (GCP), is highly beneficial. A strong grasp of performance implications, threading, system design, and scalability is essential for success in this position.
Core responsibilities for this role encompass actively participating in design discussions and meticulously documenting requirements and technical designs. The developer is expected to ensure code quality through peer reviews, adherence to coding standards, and proactive bug identification. Analyzing call stacks, trace files, and performance data is crucial for troubleshooting and pinpointing root causes. The position also involves contributing to prototypes and proofs of concept. The Senior Software Developer is tasked with producing high-quality code in languages like C# and utilizing caching and storage technologies effectively. Providing technical support to staff and resellers is also part of the role. Staying current on language features, frameworks, and technologies is key, and offering informed recommendations is encouraged. This developer will contribute to defining team best practices and will participate in a 24/7 on-call rotation.
How you'll make an impact:
- Design and Implementation - Lead and contribute to the design and implementation of new software applications and cloud-based microservices. Provide design documents and documentation to ensure efficient maintenance and code reuse.
- Write Code - Write high-quality code in C# .NET in a scalable environment.
- Follow Best Practices - Implement and maintain software development best practices. Participate in development of prototypes and proofs of concept.
- Code Reviews - Contribute to comprehensive code reviews and ensure that coding standards are followed, looking for logic errors and other bugs
- Maintenance - Perform maintenance programming for existing applications and help maintain code quality, organization, and automation.
- Troubleshoot - Analyze call stacks, trace files, and performance data to troubleshoot and identify and fix the root cause of bugs.
- Quality - Perform Test-Driven and Security-Driven Development. Provide recommendations for improvements in the overall development process.
- Teamwork - Work collaboratively within the team and across other teams/departments. Mentor junior team members as needed.
- On-Call - Participate in a 24/7 on-call rotating schedule.
What you'll bring to the role:
- 5+ years of experience with using Linux, C# and .Net Core and experience with optimization and multithreaded programming.
- 2+ years of experience with System Design and Architecture.
- 2+ years of cloud computing experience with either GCP, AWS, or Azure.
- Expert knowledge with SQL Server and Postgres database design, optimization and writing queries.
- Experience with writing unit tests and automation tests.
- Experience with Docker and Kubernetes.
- Proficiency in Git (or some other distributed source control tool) and are comfortable with resolving merge conflicts and renaming branches, etc.
- Bachelor of Computer Science, Electrical/Software Engineering or other related degrees.
Why job seekers choose Geotab
Flex working arrangements
Home office reimbursement program
Baby bonus & parental leave top up program
Online learning and networking opportunities
Electric vehicle purchase incentive program
Competitive medical and dental benefits
Retirement savings program
*The above are offered to full-time permanent employees only