Workinvirtual
We’re seeking a seasoned Software Architect to join our team and play a pivotal role in designing, developing, and implementing innovative software solutions. As a Software Architect, you’ll be responsible for driving the technical vision and ensuring the delivery of high-quality, scalable, and maintainable software systems.
Key Responsibilities:
- Technical Leadership:
- Provide technical leadership and guidance to cross-functional teams, ensuring alignment with project goals and architectural principles.
- Collaborate with stakeholders to define system requirements, design specifications, and architectural blueprints.
- Conduct technical feasibility studies and evaluations to assess the viability of proposed solutions.
- Architecture Design:
- Develop and maintain comprehensive software architectures, considering factors such as scalability, performance, security, and maintainability.
- Choose appropriate technologies, frameworks, and tools based on project requirements and best practices.
- Design and implement robust APIs and microservices to enable seamless integration between different systems.
- Development Oversight:
- Review and provide feedback on code reviews, ensuring adherence to coding standards and best practices.
- Collaborate with development teams to ensure efficient and timely delivery of software components.
- Identify and address technical challenges and bottlenecks, providing solutions and recommendations.
- Technology Evaluation:
- Stay up-to-date with emerging technologies and industry trends.
- Evaluate new technologies and tools for potential adoption, considering their benefits and risks.
- Provide recommendations for technology upgrades and modernization initiatives.
- Mentorship and Coaching:
- Mentor and coach junior team members, fostering their professional development and growth.
- Share knowledge and expertise to build a strong and capable engineering team.
Required Skills and Experience:
- Strong understanding of software development methodologies (e.g., Agile, Waterfall).
- Proven experience in designing and implementing scalable, distributed systems.
- Expertise in object-oriented programming languages (e.g., Java, C#, Python).
- Proficiency in cloud platforms (e.g., AWS, Azure, GCP) and cloud-native technologies (e.g., Docker, Kubernetes).
- Knowledge of software architecture patterns (e.g., MVC, microservices, event-driven).
- Experience with API development and integration.
- Strong problem-solving and analytical skills.
- Excellent communication and collaboration skills.
- Ability to work independently and as part of a team.
Preferred Skills and Experience:
- Experience with specific technologies or frameworks relevant to the project (e.g., React, Angular, Node.js).
- Knowledge of DevOps practices and tools (e.g., CI/CD pipelines, infrastructure as code).
- Experience with data modeling and database design.
- Familiarity with security best practices and threat modeling.
Benefits:
- Competitive salary and benefits package
- Remote work flexibility
- Opportunities for professional development and growth
- Collaborative and supportive work environment