Dell Software Principal Engineer in Bengaluru, India


The Software Engineering team delivers next-generation software application enhancements and new products for a changing world. Working at the cutting edge, we design and develop software for platforms, peripherals, applications and diagnostics — all with the most advanced technologies, tools, software engineering methodologies and the collaboration of internal and external partners.


Leads or participates in the software development lifecycle, which includes research, new development, modification, security, correction of errors, reuse, re-engineering and maintenance of software products. Manages or utilizes software that is built and implemented as a product, using best-in-class development process/lifecycle management (ex: Agile, Waterfall). Gathers business requirements and participates in product definition and feature prioritization, including customer usability studies. Performs competitive analysis for features at a product level scope.

Leads the testing and fixing of new or enhanced products. Creates technical documentation of software products/solutions. Assists with the development and review of end user and technical end user documentation.

Drives idea generation for new software products, or for the next version of an existing product. Protects Intellectual property by working appropriate legal elements (ex: procurement, patents, open source). Responsible for the delivery of products within budget, schedule and quality guidelines. Works with the team to develop, maintain, and communicate current development schedules, timelines and development status. Makes changes to system software to correct errors in the original implementation and creates extensions to existing programs to add new features or performance improvements.

Designs and develops major functional or performance enhancements for existing products, or produces new software products or tools. Reviews requirements, specifications and designs to assure product quality; develops and implements plans and tests for product quality or performance assurance.


Contributes to the design and architecture of high-quality, complex systems and software/storage environments Prepares, reviews and analyzes software/storage specifications for products and systems Contributes to the development, review, analysis and implementation of test strategies for complex software products and systems/for storage products and systems Contributes to the development, test and integration of code for new or existing software of significant complexity involving multiple teams Provides the review, analysis and closed-loop corrective action for issues contributing to software/storage defects and business process problems Designs and implements software lifecycle and quality assurance methods for projects and products Presents accurate project status to senior leadership, at both a summary and detailed level Prepares technical documents used internally and externally to provide both summary and detailed technical information other teams require to complete projects and tasks.


  • Possesses strong product/technology/industry knowledge.

  • Solid hands on experience in design and development of user interface using HTML5, jQuery, JavaScript, yWorks and graph generation tools, JSPlumb, RaphaelJS etc

  • Experience in UML

  • Familiarity in Yfiles, iText libraries

  • Good experience in Experience in Java, XML, MySQL, SAX/DOM

  • Familiar with MySQL, Oracle databases

  • Hands on with Spring, Eclipse, SVN, Tomcat, JIRA & Junit

  • Troubleshooting skills

  • Great analytical skills

  • Experience with Client / server development

  • Prior experience in Data Center and Storage/SAN domain with basic knowledge of Storage Arrays, FC Switches, Host platforms (Physical and Virtual) technologies

Education Required: Bachelors (Technical)

Experience Required: 10+ of years relevant experience