Software Architecture, Design
Java, J2EE, J2SE, UML, Spring, JPA, OOP, MVC
Designing and developing successful projects
Strong OOD/OOP skills, and experienceapplying modern design patterns
Ability to articulate and document a detailed technical vision using industry-standard tools (UML, Use Cases, etc.)
Experience delivering scalable, robust distributed systems using J2EE and J2SE technologies
Service oriented architecture and platforming
Web Services and interoperability
MVC Frameworks (Spring MVC, Struts, etc)
SQL and Databases (Oracle, MSSQL, Postgres SQL, MySQL, etc)
Code quality tools and IDEs
Object Relational mapping frameworks (JPA, Hibernate, EclipseLink, etc..)
Operating System programming and Scripting
Estimation techniques (Function point, 3-point, etc)
Roles & Responsibilities
- Identify the appropriate software architecture based on the requirements and design elements contained in a system specification.
- Maintain and evolve software architecture documents based on evolving system requirements and industry trends and technologies.
- Analyze risk and report problems in meeting system requirements.
- Provide supporting information to the Engineers to aid in the creation of a system specification.
- Assist Software Designer/Implementers with the creation of detailed software design specifications.
- Lead the review process for software architecture documents.
- Assist software version control and maintain periodic compilation schedule.
- Participate in the system specification review process to ensure system requirements can be translated into valid software architecture
- Ensure the overall integrity of the software architecture and validates it against the system specification.
- Integrate internal and external product design into a cohesive user experience
- Design innovative solutions to real market problems.
- Work closely with customers, business analysts, user interaction designers, and other software engineers to develop new solutions and improve existing ones
- Lead the design effort on a variety of projects in a highly collaborative, fast-paced environment.
- Bring in Software Designing/ Architecturing bets practices.
- Review project plan and involve in planing activities
- Performance engineering and monitoring
Experience and Qualifications
- A minimum of 5-7 years in analysis, design, development and delivery of Microsoft.NET web-based applications
- Bachelors degree in Information Technology, Information Systems or Computer Science