Revive Staffing Solutions Inc
Lead Software Engineer - 2 Position requiring IMMEDIATELY
Revive Staffing Solutions Inc, Reston, Virginia, 22090
Job Description: PURPOSE: Performs complex analysis, design, development, automated unit and integration testing, and debugging of computer software ranging from operating system architecture integration and software design to selection of computer systems, language, and/or equipment. Designs, codes, tests, develops, and documents application programs for computer systems. Works with end-users and project stakeholders to define system scope and objectives. Manages modifications to and maintenance of operational programs and procedures. Leads stakeholder and product owner meetings to define software requirements and creates highly complex systems. Acts as a mentor to junior engineers ESSENTIAL FUNCTIONS: junior developers.25% Lead a team of software engineers in the design, development, and implementation of multiple applications. Performs and leads the detail technical design, coding, code review and testing of new applications and enhancements of existing applications. Serves as a subject matter expert for specified systems and their subsequent applications. Develop and/or analyze interface design documentation. Comply with hardware and software systems standards and procedures. Deliver large systems for tens of thousands of users. Ensures compliance to the dev/sec/ops practices and policies. Understanding of architectural practices and design. 25% Identifies gaps in requirements and solves problems for the supporting staff. Identifies sequencing of services and technologies that are integrated in later phases of the project. Leads the evaluation of risk and opportunity impacts to existing or proposed projects/programs and implements risk mitigation actions. Develops ways to improve performance and increase system availability. Provides recommendations to infuse new technology. Compile, assess, and report data results from software testing and analysis. 25% Supports the Project Manager as the technical team lead on the project. Estimates the technical costs of projects for clients and project managers. Confers with clients to identify requirements and determine desired outcomes to formulate the design of the system or offer alternatives. Demonstrated experience with front-end and back-end programing and integration frameworks and tools. Assist in the estimation of development of application features. 25% Leads software design and development teams. Identifies, analyzes, defines, and coordinates user, customer, and stakeholder needs and translates them into technical requirements. Manages technical resources (hardware, software, licenses, and services). Plans and leads transformation initiatives to new software architectures. Extend open-source libraries and systems as necessary to meet the needs of the team. Play a crucial role in product scoping and roadmap / architecture discussions. Continually evaluate emerging technologies to identify opportunities, trends, and best practices. Ensure code quality, deployment standards and practices. Mentoring junior developers. What we look for Qualifications To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions. Education Level : Bachelor's Degree Education Details: Information Technology or Computer Science Experience: 8 years Software design and development, software test and evaluation, software requirements management In Lieu of Education In lieu of a Bachelor's degree, an additional 4 years of relevant work experience is required in addition to the required work experience. Preferred Qualifications Knowledge, Skills and Abilities (KSAs) Works closely with Architects, Product Owners, Scrum Masters, and Value Stream Managers to provide insight into delivering business value and meeting objectives., Expert Decomposes functional and technical requirements into project activities and tasks and provides conceptual design, prototype, and test cycles appropriate to a chosen technical solution., Expert Identifies technical risks and develops mitigation strategies; introduces and recommends industry best practices and standards for the project., Expert Evaluates and assists in the selection and procurement of hardware and software technologies and serves as a mentor for junior developers., Expert Works with stakeholders as well as technical and analytical counterparts to define constraints and develop requirements and concept of operations documentation., Expert Knowledge of cloud technologies ( e.g. AWS, Azure), Advanced Knowledge of database technologies (e.g. cloud, SQL, Oracle, Mongo DB, PostgreSQL, etc.), Advanced Fundamental knowledge of software engineers' best practices, agile methodologies, CI/CD pipelines, Advanced Knowledge of test-first practices including Test-Driven Development (TDD) for unit tests and Behavior-Driven Development (BDD) for automated acceptance tests, Advanced Strong experience with Deployment/Continuous Integration/ Continuous Testing/ Continuous Delivery processes and tools and have expertise in CI/CD tools and framework, Advanced Experience with deploying a global application and configuration management, Advanced Reviewing the work of other developers and providing feedback, Expert Ability to communicate technical requirements to all levels of expertise., Expert Proficient in establishing and maintaining good working relationships., Advanced Knowledge and understanding of software development life cycle (SDLC)., Expert Proficient with integrating complex and/or existing systems., Expert Knowledge of programming languages (e.g. JavaScript, C, Python, etc.)., Expert Excellent communication skills both written and verbal., Expert