Principal Software Engineer needs 10+ years design of web, component, distributed solutions, N-tier design, and deploying scalable and reliable systems
Principal Software Engineer requires:
• Experience implementing methodologies such as RAD, UML, or other object-oriented design required.
• Experience with version control systems such as BitBucket, GitHub, etc.
• Microsoft Platform: VSTS, TFS, SharePoint, SQL Server.
• Programming languages and technologies: ASP.NET, C#, VB.NET, ASP, .NET Framework, and Web Services;
• Knowledge of Internet Information Services; and Strong working knowledge of .Net Applications.
• Oracle Platform: Oracle APEX based Solution Design, Development, and Programming
• SQL and PL/SQL programming language.
• Exposure to Oracle Data Integrator;
• Exposure to Oracle Workflow, XML Publisher, JDeveloper and Discoverer tools.
• J2EE Platform: J2EE application server; JSP, Java Server Faces, ADF Oracle Technology Stack, or STRUTS; and
• Building web-based applications using Java/J2EE, Spring Framework, Spring MVC, and Hibernate.
• Web technologies: HTML, DHTML, XML, XSL, XSLT, Style sheets, and JavaScript;
• Protocols such as SOAP, REST, HTTPS, FTP, SMTP, etc.; and
• Knowledge of web services, Orchestration and messaging.
• Cloud and Client Framework: SOLR, Elastic Search, NoSQL DB (MongoDB, Redis etc.), AWS, and CDN cloud services; MuleSoft;
• AWS or Azure.
• Salesforce APEX based Solution Design, Development, and Programming
• Familiarity with DevOps tools (e.g., Docker, Kubernetes and Helm); and
• Familiarity with various UI frameworks such as Angular, React, Ember, and Bootstrap
• Familarity with programming languages like Kotlin, Python, etc.
• Strong written and oral communication skills, including the ability to present ideas and suggestions clearly and effectively.
Principal Software Engineer duties:
• Understand the internal customers’ needs and provide comprehensive solutions.
• Develop coding standards and provide guidance to Software Developers.
• Participate in cross-functional team communication and knowledge sharing activities.
• Work on highly complex projects with minimal guidance from Managers and assume responsibility for the success of the projects.
• Serve as technical lead on large projects and coordinate all development activities.
• Develop business relationships and integrate activities with other internal IT employees to ensure successful implementation and support of projects.
• Create the technical designs for custom solutions to meet business requirements.