1

Intermediate Software Engineer Jobs in Alberta (NOW HIRING)

You are a senior software engineer who happens to specialize in automation, not a developer who ... Provide constructive feedback and mentor intermediate/junior developers in RPA best practices

Intermediate Civil / Municipal Engineer Burnaby, BC At EXP , we're driven to provide innovative ... Proficiency in AutoCAD Civil 3D and other relevant design software. * Strong understanding of ...

Intermediate Structural Engineer

Edmonton, AB · On-site

CA$73K - CA$100K/yr

Entuitive is looking for an Intermediate Structural Engineer, based in our Edmonton office. Take ... Must have a working knowledge and ability to use structural analysis and design software

Entuitive is looking for an Intermediate Structural Engineer, based in our Edmonton office. Take ... Must have a working knowledge and ability to use structural analysis and design software

Intermediate Structural Engineer

Calgary, AB · Hybrid

CA$73K - CA$100K/yr

Entuitive is looking for an Intermediate Structural Engineer, based in our Calgary office. Take the ... Must have a working knowledge and ability to use structural analysis and design software

next page

Showing results 1-20

Intermediate Software Engineer information

See Alberta salary details

$33.5K

$101.8K

$176.5K

How much do intermediate software engineer jobs pay per year?

As of Jul 23, 2026, the average yearly pay for intermediate software engineer in Alberta is $101,778.00, according to ZipRecruiter salary data. Most workers in this role earn between $72,000.00 and $125,000.00 per year, depending on experience, location, and employer.

What does an Intermediate Software Engineer do?

An Intermediate Software Engineer is responsible for designing, developing, testing, and maintaining software applications. They typically have a few years of experience and can work independently on moderately complex tasks, while also collaborating with senior engineers and other team members. Their work might involve writing code, reviewing pull requests, debugging, and participating in code reviews. Intermediate Software Engineers help ensure that software meets quality standards and project requirements while also learning new technologies and best practices.

What types of projects and responsibilities can an Intermediate Software Engineer expect on a typical team?

As an Intermediate Software Engineer, you’ll often work on both new feature development and maintaining existing codebases. You’ll be expected to write clean, efficient code, participate in code reviews, and help troubleshoot issues alongside senior engineers. Collaboration is common—you’ll frequently interact with product managers, QA testers, and other developers to clarify requirements and ensure timely delivery. This role provides a balance of autonomy and mentorship, making it a great opportunity to broaden your technical skills while contributing meaningfully to team objectives.

What are the key skills and qualifications needed to thrive as an Intermediate Software Engineer, and why are they important?

To thrive as an Intermediate Software Engineer, you need proficiency in programming languages (such as Python, Java, or JavaScript), solid problem-solving abilities, and a relevant degree or equivalent experience. Experience with version control systems (like Git), familiarity with development frameworks, and sometimes certifications in cloud technologies or agile methodologies are valuable. Strong collaboration, communication, and adaptability help you contribute effectively to team projects and navigate shifting priorities. These technical and soft skills ensure you can deliver reliable code, work productively within teams, and adapt to evolving project requirements.

What is the difference between Intermediate Software Engineer vs Junior Software Developer?

AspectIntermediate Software EngineerJunior Software Developer
Required Experience2-4 years0-2 years
SkillsProficient in multiple programming languages, problem-solving, and system designBasic coding skills, understanding of programming fundamentals
Work EnvironmentCollaborates on complex projects, may mentor juniorsFocuses on learning, executing assigned tasks
ResponsibilitiesDesigns components, troubleshoots issues, contributes to architectureImplements features, fixes bugs, learns best practices

The Intermediate Software Engineer typically has more experience and takes on more complex tasks than a Junior Software Developer. They are expected to work independently on parts of projects and contribute to system design, whereas juniors focus on learning and executing basic tasks. This distinction helps employers identify the right level of expertise needed for specific roles.

What are the most commonly searched types of Software Engineer jobs in Alberta? The most popular types of Software Engineer jobs in Alberta are:
What cities in Alberta are hiring for Intermediate Software Engineer jobs? Cities in Alberta with the most Intermediate Software Engineer job openings:
Infographic showing various Intermediate Software Engineer job openings in Alberta as of July 2026, with employment types broken down into 91% Full Time, 6% Part Time, and 3% Contract. Highlights an 86% Physical, 5% Hybrid, and 9% Remote job distribution, with an average salary of $101,778 per year, or $48.9 per hour.
Intermediate Software Developer (AI First)

Intermediate Software Developer (AI First)

Patterson-UTI

Edmonton, AB • On-site

CA$111K - CA$132K/yr

Other

Posted 9 days ago


Patterson-UTI rating

5.0

Company rating: 5.0 out of 10

Based on 23 frontline employees who took The Breakroom Quiz

72nd of 77 rated oil and gas companies


Job description

Detailed Description:

  • Design, develop, test, and maintain industrial control software supporting frac fleet operations.
  • Own delivery of moderately complex features or subsystems across embedded systems, backend services, and operator interfaces (desktop, web, or mobile).
  • Collaborate closely with hardware, electrical, and controls engineers to ensure proper integration between software and physical equipment.
  • Troubleshoot and resolve issues involving timing constraints, concurrency, hardware communication, and field-reported defects.
  • Utilize AI development tools (e.g., code assistants, LLM-based tools) to accelerate implementation, refactoring, test generation, and documentation.
  • Critically evaluate and validate AI-generated output for correctness, maintainability, security, and safe operation in real-time environments.
  • Contribute to architectural discussions and recommend design improvements that enhance modularity, scalability, and reuse.
  • Participate actively in Agile/Scrum ceremonies, including sprint planning, estimation, backlog refinement, and retrospectives.
  • Provide accurate task estimates, identify technical risks early, and communicate trade-offs clearly.
  • Contribute to code reviews and uphold established coding standards and development practices.
  • Develop and maintain automated tests to support reliable, repeatable releases.
  • Support field deployments, troubleshooting, customer investigations, and post-release analysis as required.
  • Perform other related duties and special projects, as assigned.

Job Requirements:

  • Demonstrated ability to design and implement maintainable, production-quality software.
  • Working knowledge of multithreading, concurrency, and timing-sensitive programming.
  • Ability to debug complex issues spanning software and hardware boundaries.
  • Strong verbal and written communication skills, including the ability to clearly explain technical concepts and trade-offs.
  • Ability to work effectively in a cross-functional, matrixed organization alongside software, hardware, controls, and operations teams.
  • Ability to manage multiple initiatives in a fast-paced development environment while maintaining quality standards.
  • Experience using version control systems and participating in collaborative development workflows and code reviews.
  • Demonstrated ability to leverage AI-assisted development tools responsibly and effectively.
  • Represent the Company and its values with integrity while maintaining high professional and ethical standards in all interactions.

Minimum Qualifications:

  • Bachelor's Degree or Diploma in Computer Engineering, Computer Science, Software Engineering, or related field (or equivalent practical experience).
  • 3-6 years of professional software development experience.
  • Strong proficiency in C#, C++, or comparable strongly typed programming languages.
  • Experience developing software in Windows and/or Linux environments.
  • Experience working within an Agile development framework.

Preferred Qualifications:

  • Experience with real-time or near-real-time systems.
  • Familiarity with industrial communication protocols such as CAN bus, Modbus, or similar.
  • Exposure to embedded systems, RTOS concepts, or hardware-adjacent software development.
  • Experience contributing to modular or service-oriented system architectures.
  • Prior experience in industrial, automation, or Oil & Gas environments.
  • Experience integrating or extending AI-assisted workflows in professional development environments.

Additional Details:

The Intermediate Software Developer must work with an emphasis on individual safety and safety for others, including coworkers and third parties. Work is primarily performed in a climate-controlled office or remote environment. Occasional interaction with field equipment or hardware systems may be required. The employee is regularly required to sit, stand, or use computer equipment for extended periods.

Salary Range: $111,800 - $132,500 CAD


What Patterson-UTI employees say

Pay

Benefits

Hours and flexibility

Workplace

Get the full story on Breakroom