What are the responsibilities and job description for the Solutions Architect position at C Mack Solutions LLC?
Description:
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.
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