Job Description
Job DescriptionDescription:
C. Mack Solutions is seeking a Solution Architect to join our team. As a valued member of our Agile Scrum team, you will contribute to the delivery of high-quality software solutions that meet customers’ needs.
Responsibilities:
- Guiding agile teams in all aspects of application architecture including user interface, APIs, microservices, databases, and infrastructure
- Pursue new methods for fulfilling business requirements, including new tools, development strategies, and testing strategies, and evangelize solutions with multiple peers
- Maintain sound understanding of enterprise and program level architecture and align agile team solutions to wider enterprise standards
- Liaison with business analysts to understand business needs and develop solutions that meet business needs and comply with enterprise and program level architecture and standards
- Work with product architects, tech leads, and developers to create technical solutions within an established framework
- Propose and introduce new technology to peers and the project by executing proofs-of-concept
- Create and maintain architecture diagrams and data models, including dependency tracking
- Collaborate with the SecDevOps team to onboard new applications to the cloud-based infrastructure
- Evangelize the developed solution to tech leads to breakup stories into tasks and assist in completion of tasks in timely fashion
- Motivating developers, testers and creating a space where they can ask questions and voice their concerns.
- Keep up to date with industry trends and developments
- Delegating tasks and ensuring all daily, sprint and release goals are achieved
- Performs Architecture design and reviews as required, ensuring initiatives are aligned with future state
- Designing solutions in a Multi-Tenant Cloud Architecture that will support legacy .NET, Java, and COTS client/server applications
- Identifies risks, opportunities, compliance issues or other architectural concerns
- Active participation in architecture meetings across the portfolio where you can propose your solutions with peers
- Develop product teams technical skills through mentoring, coaching, and peer reviews.
- Review Cybersecurity Assessments and Static Code Analysis of developed software to define remediations and improve software quality.
Requirements:
You must live within the DC, MD, VA area.
U.S. Citizenship is required. Candidate must be able to obtain CBP Public Trust clearance.
- 7+ years' overall experience in software development, including hands-on experience with programming, software design patterns, and architecture in a software architect or tech lead role.
- A bachelor's degree in computer science, software engineering, or a related field.
- Proficiency in multiple programming languages, such as Java, or JavaScript, and experience with various development frameworks and libraries, such as Angular, Spring, Hibernate.
- Familiarity with design patterns, object-oriented programming (OOP), and other software design methodologies to create modular, scalable, and maintainable systems.
- Professional experience operating within cross-functional teams and groups.
- Knowledge of different software development processes, such as Agile, Scrum, Waterfall, or DevOps, and their implications on architectural decisions.
- Expertise in various architectural styles, such as client-server, microservices, event-driven, or layered architectures, and their trade-offs.
- Experience with cloud platforms (e.g., AWS, Azure, or Google Cloud) and understanding of distributed system concepts, including scalability, fault tolerance, and data consistency.
- Knowledge of RESTful APIs and experience designing, implementing, and integrating APIs in a secure and efficient manner.
- Familiarity with relational (e.g., Postgres) and NoSQL (e.g., DynamoDB, MongoDB) databases, data modeling, and data storage best practices.
- Skills in analyzing and optimizing software performance, including profiling, benchmarking, and code optimization techniques.
- Awareness of common software security vulnerabilities and strategies to mitigate them, such as input validation, secure coding practices, and encryption.
- Strong interpersonal and communication skills to work effectively with cross-functional teams and convey complex technical concepts to non-technical stakeholders.
- Ability and desire to stay current with industry trends, emerging technologies, and best practices in software architecture.
Preferred Skills and Experience:
- Deep experience in our tech stack: Java 17, Spring/Spring boot, Typescript, UI state management, ORM such as Hibernate, PostgreSQL, nginx, Amazon AWS
- Having served in a technical lead role for one or more product teams.
- Optional but beneficial certifications include AWS Certified Solutions Architect, Microsoft Certified: Azure Solutions Architect Expert, or Google Cloud Professional Cloud Architect.
- Having contributed to development of enterprise architecture and standards and ability to enforce these standards
- Experience in Continuous integration, Continuous Deployment (CI/CD) as well as SecDevOps processes and tools