Autodesk is a leading Design and Engineering Software Company transitioning to the cloud. The Principal Software Engineer will lead the design, implementation, and optimization of infrastructure solutions for the cloud platform, collaborating with engineering teams to ensure high availability and reliability of applications and services.
Responsibilities:
- Design, develop, and test features/functions delivered via applications and services
- Work with operations teams to ensure your applications and services are highly available and reliable
- Hands-on software development for infrastructure that will perform at scale
- Write code that is tested, readable, and maintainable
- Perform code reviews, evaluate implementations, and provide feedback for tool improvements
- Engage in technical and architectural discussions and decision making
- Collaborate with stakeholders to understand requirements, understand use cases and build towards a cohesive technical strategy
- Automate processes where possible and propose new tools when needed
- Crosstrain and mentor teammates
- Participate in on-call rotations to support production systems
Requirements:
- 7+ years of production experience in large-scale cloud-based Infrastructure (AWS preferred)
- Hands-on software development experience in Python and Golang
- Experience implementing unit and integration tests
- Experience with infrastructure-as-code tools such as Terraform or CloudFormation
- Experience building apps on AWS using services such as Step functions, DynamoDB, IAM, EC2, CloudWatch and Lambda
- Experience with Docker and Kubernetes/ECS environments
- Experience defining and building CI/CD processes and working with common CI/CD tools (Harness CD/Spinnaker, etc.)
- Good self-management skills and ability to track and prioritize multiple tasks coming in simultaneously
- Understanding & curiosity of DevOps best practices, architectures, and methods
- Excellent problem-solving skills, along with the ability to work independently
- Experience with Agile software development practices
- Experience using Docker to build containerized applications
- Experience consuming, designing, and implementing REST APIs
- Good understanding of networking and security concepts
- Experience with monitoring and logging tools (DynaTrace, Splunk, CatchPoint)