Senior Software Engineer x2
Senior Software Engineer x2
Vancouver, Ontario, Canada
This job allows you to work remotely
The Senior Software Engineer will work in close collaboration with our client's Architecture and Senior Technical Leadership teams to tackle intricate initiatives and aid in constructing scalable, sustainable solutions that boast top-tier resiliency and response times. Day to day duties encompass profiling databases, network stacks, and application monitoring to identify bottlenecks, imparting expertise on best practices in analysis and troubleshooting to junior team members, proposing solutions for review, and assuming ownership of their execution and implementation.
Responsibilities:● Undertake tasks and initiatives encompassing discovery, solution formulation, and implementation.
● Evaluate performance bottlenecks, present analysis findings, and engage proactively in discussions regarding the cost-benefit analysis of proposed solutions.
● Assume responsibility for and refine data architecture across SQL and NoSQL data repositories.
● Collaborate closely with both internal and third-party APIs to deliver robust, scalable application functionalities.
● Construct and enhance services geared towards processing high-volume queues efficiently.
● Craft well-structured, readable code adhering to best practices and internal guidelines.
● Serve as a technical authority across our technology stack, spanning from user interaction to system of record.
● Develop tests to validate expected functionality and assess the impact of changes.
● Collaborate with the team to deconstruct initiatives and consistently estimate efforts.
● Work in tandem with the team to establish sprint goals, commit to tasks, and fulfill deliverables.
● Actively participate in fostering a culture of growth and engineering excellence.
● Demonstrate dedication to crafting world-class user experiences and seek innovative solutions to continually enhance customer value.
● Share knowledge and expertise to enhance technical proficiency across the development team.
Must Have Skills:
● Strong proficiency working with Node.js and in at least one statically typed language (with a preference for C#)
● Highly proficient implementing maintainable functional code patterns
● Solid understanding of managing data architecture at scale, with experience in Postgres and SQL Server (additional experience is a bonus), including practical knowledge of data re-architecture and migration while applications are live
● Extensive knowledge of horizontal and vertical auto-scaling techniques
● Sound practical understanding of developing services capable of scaling on demand using queues
● Strong practical understanding of at least one cloud platform, particularly AWS, and adept at constructing highly scalable systems on cloud infrastructure
● Robust understanding of Infrastructure Architecture, with proficiency in at least one Infrastructure as Code tool (preferably Terraform)
● Hands-on experience in writing unit tests and navigating modern CI/CD pipelines
● Solid grasp of design patterns and architectural best practices such as SOLID principles, Domain-Driven Design (DDD), Microservices, and Messaging
● Exceptional verbal and written communication abilities
● Demonstrated commitment to continuous learning, staying abreast of the latest technologies, methodologies, and tools
● Highly analytical mindset, with a passion for solving complex problems
Nice to Have Skills: