Leadership role in design, development, debugging, and testing of the full stack software solution. Own system features through the full stack implementation.
Strong motivation to learn about software security aspects.
Support the implementation of security fixes (typically code injections, buffer overflow, remote injectionsxe2x80xa6) to assigned products.
Active participation during the design and specification process to ensure project plans are viable and the best approach to meet the business objectives
Ensure implementation of the user interface adheres to human centered design principles and branding standards
Provide development and testing estimates based on engineering specifications
Participation in a collaborative environment including team break-outs, design and scrum meetings
Manage and update current work efforts as recorded in User Stories and tasks within Rally
Develop prototypes to rapidly validate design ideas
Collaborate with the team to ensure clearly defined interfaces between components of the complete software solution
Adhere to coding standards, source control procedures, and documentation
Develop reusable components for common functionality and reduced maintenance costs
Assist in identifying and mitigating risks throughout the development life cycle
Provide continuous improvement ideas regarding coding standards, source control procedures, and documentation
Provide technical recommendations to product management, architecture, and fellow engineers
Other duties as required
Requirements:
BA, BSc, or MSc in Computer Science or other technical discipline
5+ years software development experience with a record of accomplishment
Experience with web application design and development principles
Experience with Object Oriented Programming (OOP) design and development principles
Demonstrated use of software design patterns in prior software development projects
Strong Troubleshooting skills and problem analysis
Experience with Service Oriented Architectures (SOA), relational and non-relational databases, RESTful web services, and IoT protocols.
Experience with Python, containerization (Docker), microservices, cloud development (Azure, AWS) considered a plus
Ability to design and develop software from engineering specifications
Experience in the agile development methodology, is a plus.
Experience debugging and solving technical problems
Understanding of software security principles and design
Experience with web servers and application servers (IIS and Azure cloud is a plus);
Knowledge of cryptography, authentication, authorization and best practice architecture
Knowledge about most common security threats in web apps - OWASP/SANS25 (code injections, buffer overflow, remote injectionsxe2x80xa6)
Experience with creating engineering specifications and test plans
Highly skilled in React front-end framework. Experience with Angular considered a plus.
Experience with JavaScript charting, graphing, and dash boarding frameworks such as Highcharts, FusionCharts, ZingChart, etc.
Highly proficient in .NET Core, MVC, C#, C++, and SQL
Experience with modeling properties of equipment or devices within software used for analysis and reporting
Understanding of the data center and telecom industries is preferred, but not required
Excellent written, verbal and analytical skills required. English required, other languages a plus.
Proficient with Microsoft Word, PowerPoint, & Excel
Working Conditions/Other:
Normal office environment. Geographically distributed (virtual) team.
Extensive use of computer to complete assignments.
Ability to multi-task in a fast-paced environment with multiple deadlines is essential.