Principal Software Developer

Posted yesterday

Apply Now

Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • Principal Software Developer leading a team to build data services for Autodesk's AEC products. Responsible for software design, cloud architecture, and mentoring developers.

Responsibilities

  • Lead the team of developers to deliver a high quality, robust and performant software products and services
  • Design new functionalities for new and existing services and products
  • Create design documents and present them to the team
  • Perform peer code reviews and coach junior developers
  • Profile existing products and services to achieve better performance
  • Involved with all aspects of software development, working to create and maintain the most reliable, secure, performant, and high throughput service for our customers by leveraging cloud technology
  • Partner closely with product managers, product owners, software architects, and other stakeholders to iteratively turn high-level requirements into product enhancements that are delivered to customers incrementally and continually
  • Contribute to software design and architecture by leveraging cloud design patterns and injecting your cloud expertise into the entire development lifecycle
  • Hands-on software development for infrastructure that will perform at scale
  • Design and implement unit, regression and end-to-end tests
  • Contribute to improvements in processes and deliverables that increase the effectiveness and efficiency of the team in responding to customer and business needs
  • Document and present your ideas and solutions accurately and thoroughly
  • Participate in on-call rotations to support production systems

Requirements

  • Bachelor’s or Master’s degree in computer science
  • 10+ years of Software Development experience building enterprise level cloud services
  • Strong understanding of cloud-based architecture, serverless computing, and microservices
  • Experience with AWS services and technologies (e.g., EC2, ECS, Lambda, API Gateway, S3, DynamoDB, RDS)
  • Strong proficiency in programming languages (e.g., JavaScript, Java, Python, Node.js, Go)
  • Familiarity with containerization technologies like Docker and container orchestration tools like Kubernetes or AWS ECS
  • Understanding of microservices architecture and distributed systems design principles
  • Knowledge of RESTful APIs and related protocols (HTTP, JSON, XML)
  • Understanding of security principles, authentication, and authorization mechanisms in AWS including SOC-2
  • Experience implementing and maintaining automated testing processes to ensure code quality
  • Experience in monitoring backend performance, identify areas of improvement, and implement optimizations to enhance system scalability, response times, and resource utilization
  • Experience of working in Agile process is preferred
  • Strong problem-solving skills and the ability to work in a collaborative team environment.

Benefits

  • Annual cash bonuses
  • Commissions for sales roles
  • Stock grants
  • Comprehensive benefits package

Job type

Full Time

Experience level

Lead

Salary

Not specified

Degree requirement

Bachelor's Degree

Tech skills

AWSCloudDistributed SystemsDockerDynamoDBEC2JavaJavaScriptKubernetesMicroservicesNode.jsPythonGo

Location requirements

HybridTorontoCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.