Intermediate Software Developer

September 10 2024
Expected expiry date: October 9 2024
Industries Energy
Categories Automation, Process, Computer Engineering, Software Engineering,
Remote
Pickering, ON • Full time
Job Details
We are currently requesting resumes for the following position:  Intermediate Software Developer

Resume Due Date:  Tuesday, September 17, 2024 (5:00PM EST)

Number of Vacancies: 1

Duration: 24 months

Hours of work:  40

 Location: 889 Brock Road Pickering (Hybrid, 4 days remote)

Job Overview

Department: Enterprise Digital Technology - Digital Innovation & Strategy

Reports To: Lead Software Developer / Senior Manager

Job Summary:

We are seeking a highly skilled and versatile Software Developer to join our team. In this role, you will play a key role in developing innovative software applications, including AI-enabled products, while ensuring security best practices and navigating the challenges of a new codebase. This position is for Full Stack Web development, requiring proficiency across various layers of the technology stack.

Department:

As a developer with Ontario Power Generation's Digital Innovation & AI Team, you will be at the forefront of assessing groundbreaking technologies such as AI, robotics, drones, digital twins, VR/AR, and IoT. You will help to analyze and determine the potential of these innovations for enhancing competitiveness, efficiency, and effectiveness across OPG's diverse departments, including Nuclear Engineering, Finance, HR, IT, Maintenance, and Operations. Your work will drive forward the readiness and fit of new tech advancements within the company, ensuring OPG remains a leader in the energy sector.

Work Environment:

•            Startup atmosphere with enterprise job security

•            Flexible Hybrid work environment, full remote arrangements available 

•            Company provided work station laptop and cloud computing resources

Key Responsibilities:

•            Design and architect scalable and maintainable software solutions that meet both technical and business needs.

•            Develop clean, efficient, and secure code from scratch as well as improve existing codebases.

•            Proactively identify and implement security measures throughout all stages of software development to protect against vulnerabilities.

•            Work closely with cross-functional teams to define system architecture, component design, and interaction patterns.

•            Stay abreast of emerging technologies and architectural approaches, and integrate them where appropriate to enhance application performance and maintainability.

•            Translate complex requirements into functional, user-friendly software without sacrificing reliability and performance.

•            Establish and adhere to corporate coding standards and best practices while maintaining the flexibility and innovative spirit of a startup environment.

•            Participate actively in code reviews and collaborate with other developers to ensure code quality and shared knowledge.

•            Address technical debt proactively and refactor code to improve maintainability and performance.

Technical Stack:

Our development environment relies on the following tech stack:

Frontend:

•Next.js / React: For building interactive UIs with SSR and file-based routing.

•TailwindCSS: For rapid styling with a utility-first approach.

Backend:

FastAPI: For high-performance API development with automatic documentation.

•Flask: Some of our more simple applications use Flask.

•Prisma: For type-safe database queries

•tRPC: For end-to-end type safety in APIs.

Database:

•MSSQL/SQL Server: As the primary relational database management system.

Caching:

•Redis: For high-performance data caching and quick access.

Infrastructure:

•Docker: For containerization and consistent deployment workflows.

•Azure Kubernetes: For container orchestration and scalability.

•Azure DevOps: For CI/CD, version control, and project tracking.

Personal Attributes:

•Innovative and able to drive ideas to completion in a constrained environment.

•Comfortable with ambiguity and able to navigate complex organizational structures.

•Committed to continuous learning, open-minded to feedback, and dedicated to personal and professional growth.

Qualifications

Required Skills and Qualifications:

•            Bachelor's degree in Computer Science, Engineering, or a related field.

•            Demonstrable experience in full-stack development with a focus on front end development.

•            Strong understanding of software architecture and design patterns.

•            Advanced knowledge in system security, data protection, and secure coding practices.

•            Ability to adapt to a new codebase and make informed decisions to evolve it effectively.

•            Experience with Agile methodologies, iterative development, and deployment strategies.

•            Strong analytical and problem-solving skills, with a detail-oriented mindset.

•            Excellent communication skills, capable of conveying complex ideas and collaborating in a multidisciplinary team.

•            Ability to work in a fast-paced startup environment while adhering to strict corporate regulations and timelines.

Preferred Skills and Experience:

•            Experience with cloud architecture, microservices, and distributed systems.

•            Familiarity with CI/CD pipelines, test automation, and DevOps practices.

•            Experience with modern front-end frameworks and a commitment to user-centric design.

•            Prior experience in a startup environment with exposure to corporate governance.

•            Familiarity or experience integrating LLMs / AI into applications is a bonus.

 

Apply now!

Jobs.ca network