Job Description
<p><b>Role : </b>Principal Software Engineer, Application Development<br/><br/><b>Location : </b> Remote <br/><br/><b>Shift Time : </b>2 : 00 PM to 11 : 00 PM <br/><br/><b style="background-color: inherit;">POSITION SUMMARY : </b><br/><br/>The Principal Software Engineer is responsible for designing, developing, and maintaining high-quality software products that align with business requirements and exceed customer expectations.
As a key member of the development team, this role involves close collaboration with product management, QA teams, and other stakeholders to drive a robust development process supporting the company's growth objectives.
The ideal candidate will bring extensive expertise in full stack software development, strong problem-solving skills, and the ability to effectively communicate and collaborate across cross-functional teams.<br/><br/><b>KEY RESPONSIBILITIES : </b><br/><br/>- Provide technical guidance and mentorship to Software Engineers, fostering a collaborative and growth-oriented environment.<br/><br/>- Design and develop complex front-end and back-end components of web applications, ensuring scalability, performance, and maintainability.<br/><br/>- Develop clean, efficient, and well-documented code, adhering to high standards for coding practices and quality.<br/><br/>- Collaborate with product management to define product roadmaps, prioritize features, and align development efforts with business goals.<br/><br/>- Develop responsive and intuitive user interfaces using HTML, CSS, JavaScript, KnockoutJS, Angular, and NgRx, adhering to UI/UX best practices and accessibility standards.<br/><br/>- Develop robust server-side solutions using C#, .NET 9, and other relevant technologies, ensuring scalability, performance, and maintainability.<br/><br/>- Implement and optimize background job processing using tools like Hangfire to enhance application efficiency and reliability.<br/><br/>- Design and implement RESTful APIs, ensuring seamless integration with front-end applications and alignment with industry best practices.<br/><br/>- Integrate third-party APIs and services to extend application functionality and enhance capabilities.<br/><br/>- Manage and optimize Elastic Search to deliver efficient and scalable search functionalities within applications.<br/><br/>- Utilize Git or similar version control systems for code management, ensuring collaboration and codebase integrity.<br/><br/>- Participate in code reviews, maintaining high standards of code quality, consistency, and security.<br/><br/>- Develop and execute comprehensive unit tests, integration tests, and end-to-end tests to validate application functionality and performance.<br/><br/>- Troubleshoot and resolve complex technical issues, providing support to team members as needed to ensure timely resolution.<br/><br/>- Conduct root cause analysis of defects and issues and clearly communicate findings to relevant stakeholders.<br/><br/>- Participate in agile ceremonies (e.g., sprint planning, daily stand-ups, retrospectives) to align testing efforts with team goals and objectives.<br/><br/>- Prioritize and manage multiple tasks effectively in a fast-paced environment.<br/><br/>- Work independently and take ownership of assigned tasks while being a strong team player.<br/><br/>- Demonstrate a solid understanding of the business domain and end-user requirements to ensure development efforts deliver value to customers.<br/><br/>- Collaborate effectively with team members to break down tasks, estimate efforts accurately, and deliver features incrementally to meet project milestones and deadlines.<br/><br/><b>REQUIRED SKILLS AND QUALIFICATIONS :</b><br/><br/>- Bachelor's degree in computer science, Software Engineering, or a related field.
Master's degree preferred.<br/><br/>- 12+ years of experience in full stack software development.<br/><br/>- Proven expertise in C#, .NET Core or .NET 9, and other relevant technologies in web development.<br/><br/>- Strong understanding of front-end frameworks such as HTML, CSS, JavaScript, KnockoutJS, Angular, and NgRx.<br/><br/>- Deep knowledge of Web API development principles and best practices.<br/><br/>- Experience in managing and optimizing databases, including SQL Server and Elastic Search.<br/><br/>- Proficiency in background job processing using tools like Hangfire.<br/><br/>- Extensive experience with Azure and AWS cloud platforms.<br/><br/>- Experience with Agile methodologies and tools, including Git for version control and JIRA for project management and issue tracking.<br/><br/>- Experience with microservices architecture.<br/><br/>- Experience working within a Continuous Integration/Continuous Delivery (CI/CD) process.<br/><br/>- Knowledge of software builds, testing, and CI/CD tools (e.g., Jenkins, Git).<br/><br/>- Ability to take initiative, offer suggestions, and provide resolutions proactively.<br/><br/>- Passion for delivering business value and willingness to perform other assigned tasks.<br/><br/>- Ability to provide regular updates, system solutions, and communicate issues to the management team.<br/><br/>- Constantly strive to learn new technologies and stay up to date in the rapidly changing industry.<br/><br/>- Excellent communication skills with the ability to effectively collaborate with cross-functional teams.<br/><br/>- Strong problem-solving skills and attention to detail.</p> (ref:hirist.tech)