DescriptionJob Summary
The Sr. Software Engineer focused on security is responsible for the implementation of different security fixes and full stack implementation of a software technology stack to enable remote services. The development and maintenance of Vertivs LIFE Services Cloud Platform will require knowledge of .NET Core web development database and messaging service technologies. This position will work with a software architect on the overall design of the system as well as other software engineers to develop the solution.
Duties and Responsibilities
- Leadership role in design development debugging and testing of the full stack software solution. Ownsystem 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 injections) 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 injections)
- 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 boardingframeworks 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 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.