The Applications Architect is responsible for ensuring that all Accruent products are built based on the best practices, will achieve desired results when delivered, and can be delivered on time. The Applications Architect validates new technologies and determines how they can be leveraged within our product offerings. Responsibilities include reviewing technical requirements and designing and architecting the base framework and architectural modules that support the domain specific modules that will be built by the engineering team of which the architect is an integral member of.
This role will be focused on a SAAS, .NET/SQL Server product line leveraging RESTful APIs and React.JS. The ideal candidate will be highly motivated and have a passion for technology and creative problem solving. If you are self-driven, enjoy working in a team environment, have an entrepreneurial spirit and enjoy creating innovative solutions to complex problems, Accruent may be a fit for you.
ESSENTIAL DUTIES & RESPONSIBILITIES
- Operate independently in an agile software development environment.
- Define the application architecture and infrastructure needs.
- Own the solution design. Understand the underlying business needs and craft a solution that meets these needs within the boundaries of the budget, existing assets or technology direction.
- Identify proof of concept stories that will need to be completed in early iterations of the project.
- Identify early any architectural risks for the project.
- Engage in design sessions and generate realistic estimates.
- Work with project managers to incorporate estimates into a project plan and generate project approach.
- Identify, evaluate and demonstrate next generation technologies.
- Create code that meets design specifications, follows standards, and is easy to maintain.
- Work with various teams in the organization to ensure appropriate project requirements are met. Ability to teach other non-technical customers/other team members information about the code.
- Mentor other engineers and engage in code review.
- Ability to carry out all policies and procedures as established by the team, department or company at large.
- Consistently demonstrate Accruent’s values: Humility, Integrity, Drive to Excellence, Results Orientation, Winning Attitude and Grit.
KNOWLEDGE, SKILLS & ABILITIES
- Bachelor’s Degree in Computer Science or related field. Master’s degree is preferred.
- Agile development methodologies.
- 10+ years of software engineering/development experience, specifically at least 6 years of experience in design and development of web applications.
- Solid Object Oriented design and development skills. Experience with standard development patterns, such as model-view-controller/model-view-view model patterns for web application development.
- Expertise with RDBMS products like Oracle and/or SQL Server required and NoSQL databases such as ElasticSearch and/or MongoDB highly desired.
- Expertise in building secure SAAS enterprise class applications.
- Performance tuning and troubleshootingexperience.
- Experience with software architecture and full SDLC of large-scale distributed enterprise applications.
- Experience in architecting and developing high-volume, multi-tier, multi-tenant enterprise software applications and products.
- Good communication and interpersonal skills.
- Self-reliant and motivated self-starter.
- Ability to reason logically and provide innovative solutions.
- Project and task oriented with a focus on details.
- Ability to work well within group or individually on projects.
- Knowledge of “test-driven design” approach.
- Knowledge of Continuous Integration methodology.
- Knowledge of unit testing frameworks.
- Knowledge of DevOps tools.
- Occasional travel ~10%