About the role:
As part of the agile teams, the Lead Architect assists in design problems, platform best practices and ensures that every application is implemented according to acceptable design, quality, performance, and security standards. They formulate high-level estimates for analyses, project planning, and impact assessments and demonstrates the ability to work with team members with varying degrees of technical depth and breadth of knowledge. The architect will also analyze and recommend technology strategies where gaps exist including performing proofs-of-concept as needed.
Engineers at Blackbaud are thought leaders in our department and local development community. Duties include solving complex issues, learning/teaching new technologies, promoting growth and assuring your team delivers on its commitments.
What you'll be doing:
- Collaborate with product owners and other business partners to understand and refine business requirements that drive the architecture
- Work closely with engineers to create and document the detailed application design
- Perform code and design reviews as needed
- Collaborate with other engineers and architects to create integration strategies between systems
- Work with the infrastructure teams to ensure the software is effectively mapped to a hardware implementation
- Collaborate with IT Security to ensure solutions comply with corporate and regulatory policies
- Perform proofs-of-concept as needed to determine technology solutions
- Evaluate legacy and current applications, its architecture, database design, etc. to make recommendation on improvements on design, performance, and quality
- Mentor engineers of various levels
- Identify and champion reuse opportunities
- Ensure consistent practices across enterprise initiatives
What we'll want you to have:
- M.S. or B.S. in Computer Science, Engineering preferred, or possess equivalent work experience
- 10+ years of experience in design and development of complex web-based, high transaction, high volume, distributed systems offered in a SaaS model or similar.
- Formal skills with the following: C#.Net, web services, ORM frameworks, RDBMS, NoSQL, data stores, build / continuous integration, messaging systems and protocols.
- Experience with software development methodologies such as agile and test-driven development
- Experience with data modeling and database design.
- Experience with messaging middleware
- Good knowledge of web services and related standards
- Knowledge of distributed architectures and design patterns, and best practices