Job Description
JOB TITLE: Principal Software Engineer/Architect
DEPARTMENT: Software Development
REPORTS TO: Project Director
PURPOSE:
We are seeking a highly skilled and experienced Senior Software Engineer/Architect to lead the design, development, and implementation of robust Java-based applications. This role requires a deep understanding of modern software architecture, design patterns, and best practices. As a technical leader, you will shape the architecture of scalable and extensible solutions while mentoring team members and ensuring adherence to coding standards. You'll be working on cutting-edge projects, influencing strategic decisions, and driving innovation in a collaborative and fast-paced environment.
KEY RESPONSIBILITIES:
- Application Architecture and Development: Architect and design scalable, robust, and high-quality Java-based applications. Lead the evolution of microservices architecture, ensuring alignment with business requirements. Develop new services using best practices and avoiding common pitfalls.
- Identify and address performance bottlenecks and optimize application scalability. Design and implement RESTful APIs and third-party integrations.
- Leadership and Mentorship: Provide technical leadership and guidance to the development team. Mentor junior developers, fostering skill development and adherence to coding standards.
- Conduct code reviews and offer constructive feedback to improve team output. Ensure compliance with security best practices and regulatory requirements.
- Collaboration and Stakeholder Communication: Work closely with cross-functional teams, including project managers, QA teams, and stakeholders, to ensure alignment with business objectives. Communicate complex technical concepts effectively to non-technical stakeholders.
- Participate in the full software development lifecycle, from ideation to delivery.
- Continuous Improvement and Innovation: Stay informed on industry trends, emerging technologies, and tools to enhance application development. Evaluate and recommend new technologies, tools, and methodologies.
- Enforce coding standards, best practices, and maintain technical documentation.
- Clean and Efficient Web Applications: Translate company vision into clean and efficient web applications.
- Next-Generation Solutions: Architect next-generation microservices models with innovative application designs.
- Application Services: Lead the full evolution process of application services from ideation to execution.
QUALIFICATIONS, SKILLS, AND EXPERIENCE:
- At least Bachelor’s degree in Computer Science, Information Technology, Computer Engineering, or a related field.
- Minimum 8+ years in software architecture and engineering.
- Experience with microservices architecture and RESTful API design.
- Strong knowledge of Agile development methodologies.
- Familiarity with cloud platforms (e.g., AWS, Azure).
- Experience with containerization tools (e.g., Docker, Kubernetes).
- Knowledge of database design and SQL.
- Proficiency in CI/CD pipelines and version control systems (e.g., Git).
- Ability to mentor and lead development teams effectively.