About this role
Key responsibilities • Design and build highly complex software solutions using agile/XP/TDD. • Program well-designed, efficient code independently. • Collaborate with designers, developers, and product owners to build cloud native software solutions targeting PCF, Azure, AWS, mobile iOS/Android, etc. • Clearly communicate team wide progress and identify blocking processes/patterns that hold a team back. • Participate in paired programming and code reviews with juniors to expand the teams collective knowledge and understanding of software engineering. • Complete independent research to refine best practices and present work to peers. • Coach and mentor software developers. • Provide technical guidance to leadership so that solutions are built with innovation and sustainability in mind. • Learn the business drivers of a product and help drive the technical direction of a product to fulfill the desired vision. • Turn complex ideas into manageable pieces of work to complete as part of a product team. Requirements – education & experience • 5-7 years previous experience in software development (either 7 years of experience specifically in software development or five years of experience in software development in combination with 2 years alternative experience in a related field). • A breadth of experience building software solutions through a strong mix of independent research/projects and industry expertise. • Portfolio of work including code samples. • Previous experience collaborating on a cross-functional team. • Deep understanding of development cycle. • Experience turning complex ideas into user stories and breaking down complex work into smaller components. Required skills • Significant familiarity and comfort in using IDEs with knowledge of shortcuts and operations that speed up development time. • Deep and solid understanding of APIs with experience designing/building/implementing APIs. • Significant understanding of cloud-native software engineering best practices. • Familiarity with several frameworks with ability to write concise and easy-to-follow code. • Experience with automation and optimization to create repeatable patterns that increase team efficiency. • Experience managing and optimizing databases. • Understanding of functional programming and ability to apply functional concepts in any language. • Ability to comfortably work with multiple platforms. • Ability to debug and avoid future problems by building more robust solutions. • Ability to analyze mistakes/successes from previous personal or team experience and design future solutions with few bugs and quick remediation times. • Experience building solutions with the larger team in mind to improve software engineering at the team level. • Deep and solid understanding of cyber security principles such as authentication, authorization and encryption. • Ability to leverage and recommend common security libraries applicable to language stack and solid experience with secure programming best practices. • Knowledge of common attack vectors such as SQL injection, Denial of Service (DoS), and Cross-Site Scripting with methods to limit exposure. • Quick ability to identify and remediate potential security vulnerabilities. • Experience working with one or more CI/CD stacks and associated best practices. • Ability to setup CI/CD for new products with no guidance and recommend modifications to CI/CD processes. • Quick to pick up new languages…
Posted by Bartech Staffing on behalf of a vetted Top Three US electric utility client. Your recruiter confirms the exact rate when you connect.