Principal Software Engineer Peopleclick
A Principal Software Engineer provides senior technical guidance and project leadership for complex product design and development projects including research and analysis with expert-level application of technology platform principles, advanced software architecture theories, and proven quality testing processes in a software as a service engineering environment. The Principal Software Engineer leads the development of new software engineering theories & design methods and employs subject matter expertise in the talent management domain and software engineering/architecture technical specialty.
A Principal Software Engineer is responsible for leading and providing technical guidance during the delivery of software application functionality, architecture design concepts and providing expert-level designs of the underlying technology of the software application, including software platform, detailed designs and code implementation of features and supporting process improvement initiatives.
As a Principal Software Engineer, you will work under consultative direction, using independent judgment, toward predetermined long-range targets and will pursue courses of action essential for the delivery of the design and implementation of one or more products or platform technologies within our talent management applications. This includes, through the frequent use of highly creative software design and methodologies, develop resolutions to unusually complex software engineering and technology problems, providing leadership within the defined Agile Scrum development methodology and software design practices. The Principal Software Engineer leads development projects of the Company?s core software solutions and erroneous decisions or recommendations result in the inability to deliver software product releases including long-ranging effect, requiring substantial expenditure and substantial resources to re-code, correct and/or achieve software engineering goals. This position represents the software engineering project/team lead and performs project leadership responsibilities, as well as acts as the spokesperson on specialized technical projects or programs. Works closely with management and software architecture staff on matters requiring coordination across organizational lines, as well as, mentors software engineering staff.
? Technical lead on significant development projects; providing critical development expertise (specifications, design, creation, maintenance and quality) and innovation in setting project direction, including base architecture standards, technology platform, analysis, design, task breakdown and input to senior level management on scheduling and resource allocation
? Provide critical technical expertise and innovation for project direction, owning the accountability of the project delivery
? Review task estimates, efforts, and resource requirements for assigned projects and update engineering management on appropriate schedule, task, and quality guidelines for the project
? Provides and ensures excellence in product design and implementation with regards to efficiency and scalability
? Correct complicated defects and make major enhancements to resolve customer problems
? Effectively document technical issues, changes to code, etc.
? Maintain the integrity of assigned components throughout the life cycle within the integrated, technical environment.
? Lead technical reviews (Design Reviews, Code Reviews) within the organization, able to work across functional areas (Services, Support etc )
? Work with QA to determine quality and test metrics and plans
? Conduct detailed analysis of the performance attributes of applications using emulation, measurement and analysis techniques. Ensure the quality, accuracy and repeatability of performance findings
? Serve as a senior team member and go to resource on development team, recognized within the Development organization as a technical expert in one or more key areas of technology
? Proven commercial software application experience and software engineering expertise within a robust enterprise product suite.
? In-depth experience developing software components in a distributed web-based environment (including cloud based software-as-a-service configurations) and mobile technologies.
? Strong experience with data integration and data feeds from large complex enterprise resource planning (ERP software such as Peoplesoft, Oracle or SAP).
? Subject matter expertise and extensive knowledge of Talent Management software (Recruiting, Performance Management, Succession Planning, Compensation, etc).
? Bachelor?s degree in Computer Science, Computer Engineering or related discipline
? 8+ years of experience in software development
? Technical expertise and experience on the following:
o 5+ years of experience in Java / J2EE development
o 5+ years strong experience with J2EE patterns and strong Java skills, including working knowledge of core libraries, design patterns, Struts, JSP, EJB, XSLT, XML, Spring, GWT, Servlets and Hibernate
o 5+ years of experience with multi-tier service oriented architecture, including knowledge of Oracle 10, Tomcat, and web services.
o 5+ years of experience developing code, troubleshoot infrastructure and application problems independently and/or in collaboration with other technical members of the team.
o 2+ years of experience tuning SQL queries with complex business logic. Solid knowledge of joins, views, triggers, stored procedures, and data normalization.
o Knowledge of Test-Driven-Development using JUnit framework.
? Strong problem solving and analytical skills
? Strong design and coding skills and knowledge of testing methodologies and techniques
? Strong verbal and written communication skills, ability to communicate effectively with all levels of the organization.
||Waltham, MA |