Über diese Sr. Software Developer Stelle bei AspenTech
The driving force behind our success has always been the people of AspenTech. What drives us, is our aspiration, our desire and ambition to keep pushing the envelope, overcoming any hurdle, challenging the status quo to continually find a better way. You will experience these qualities of passion, pride and aspiration in many ways — from a rich set of career development programs to support of community service projects to social events that foster fun and relationship building across our global community.
The Role
We are seeking an experienced Senior Software Developer with 4–7 years of professional software development experience to design, develop, test, and maintain high-quality software solutions across desktop, web, and cloud environments.The successful candidate should also have experience leveraging AI-assisted development tools to improve development efficiency and software quality, including accelerating coding, debugging, testing, code review, troubleshooting, and documentation, while applying sound engineering judgment to validate AI-generated solutions.
Your Impact
- Design, develop, test, deploy, and maintain high-quality software applications, services, and components across desktop, web, and cloud environments.
- Write clean, efficient, secure, maintainable, and well-tested code following established software engineering standards and best practices.
- Participate in all phases of the software development lifecycle, including requirements analysis, technical design, implementation, code review, testing, deployment, troubleshooting, and maintenance.
- Contribute to software design and architecture, evaluating technical alternatives and developing solutions that consider scalability, reliability, performance, security, and maintainability.
- Develop software applications, services, APIs, utilities, and automation using technologies such as C#, C++, and other appropriate programming and scripting languages.
- Develop and maintain desktop and web applications using modern development technologies, frameworks, and application architectures.
- Develop and support applications and services for cloud environments, including AWS and Azure.
- Develop and maintain unit, integration, and automated tests to ensure software quality, reliability, and regression prevention.
- Leverage AI-assisted development tools to improve efficiency across software design, coding, debugging, testing, code review, refactoring, troubleshooting, and technical documentation.
- Critically review and validate AI-generated code and technical recommendations to ensure correctness, security, performance, quality, and maintainability.
- Collaborate effectively with developers, architects, QA, DevOps, product teams, and other stakeholders to understand requirements, develop technical solutions, and resolve complex issues.
- Participate actively in technical design reviews, code reviews, technical discussions, and knowledge sharing within the development team.
- Integrate software development and delivery processes with version control systems such as Git and Perforce and automated CI/CD pipelines.
- Work with container technologies, such as Docker and Kubernetes, to support modern application development and deployment environments.
- Work with SQL and NoSQL database technologies as required by application designs and product architectures.
- Troubleshoot complex software issues, perform root-cause analysis, and implement effective and sustainable solutions.
- Apply Agile development practices to deliver high-quality software in a timely and predictable manner.
- Provide technical guidance and share software development best practices with less-experienced developers.
- Identify opportunities to leverage AI, automation, and modern development tools to reduce repetitive work, streamline development workflows, and improve engineering productivity and software quality.
What You'll Need
- 4-7 years of professional software development experience, with demonstrated experience designing, developing, testing, and maintaining production software.
- Strong programming and coding skills, with the ability to independently design, implement, test, debug, and maintain complex software components and features.
- Strong proficiency in C# and/or C++, with a solid understanding of object-oriented programming and modern software development practices.
- Strong understanding of software engineering principles, object-oriented design, design patterns, data structures, algorithms, and software design concepts.
- Solid understanding of software architecture principles and the ability to translate product and technical requirements into effective software designs.
- Strong understanding of the end-to-end software development lifecycle, including requirements, design, development, testing, deployment, and maintenance.
- Experience developing desktop and/or web applications, including services and APIs.
- Experience developing and deploying software in cloud environments, preferably AWS or Azure.
- Experience with software testing and quality engineering practices, including unit testing, integration testing, automated testing, debugging, and defect resolution.
- Experience effectively leveraging AI-assisted software development tools to improve coding, debugging, testing, code review, refactoring, troubleshooting, documentation, and overall development efficiency.
- Ability to critically evaluate and validate AI-generated code and technical recommendations, applying sound engineering judgment to ensure correctness, security, performance, quality, and maintainability.
- Experience with CI/CD, build automation, and modern software development and delivery practices.
- Experience with version control systems, such as Git and Perforce.
- Experience with container technologies, such as Docker and Kubernetes.
- Solid understanding of SQL and/or NoSQL database technologies and their use in software applications.
- Working knowledge of Windows and/or Linux operating systems.
- Experience working within an Agile software development environment.
- Strong analytical, debugging, and problem-solving skills, with the ability to independently investigate complex technical issues and develop effective solutions.
- Excellent written and verbal communication skills, with the ability to clearly communicate technical concepts, designs, decisions, issues, and solutions.
- Strong collaboration and teamwork skills, with the ability to work effectively across development teams and with cross-functional stakeholders.
- #LI-RK1