




**Position:** Principal Software Engineer **Organization:** O\-Trade \& Logistics **Job Description:** The Principal Software Engineer will provide technical leadership and strategic direction for the development and maintenance of high\-quality, scalable, and performant software solutions using the .NET framework. This role will drive innovation, mentor team members, and ensure adherence to best practices, contributing to the overall success of the organization. **Key Responsibilities:** * **Technical Leadership and Architecture:** + Design and implement complex, enterprise\-grade software architectures using the .NET stack (e.g., ASP.NET Core, Entity Framework, C\#). + Provide technical guidance and mentorship to software engineers, fostering a culture of excellence and continuous improvement. + Evaluate and select appropriate technologies, frameworks, and tools to meet project requirements. + Conduct code reviews and ensure adherence to coding standards and best practices. + Define and maintain architectural patterns and design principles. + Lead technical discussions and decision\-making processes. * **Software Development and Implementation:** + Develop and maintain high\-quality, scalable, and secure software applications. + Write clean, efficient, and well\-documented code. + Troubleshoot and resolve complex technical issues. + Optimize application performance and ensure system stability. + Implement and maintain automated testing strategies (unit, integration, and end\-to\-end). + Work with databases, including design, optimization, and query tuning. * **Collaboration and Communication:** + Collaborate with product managers, designers, and other stakeholders to define requirements and deliver solutions. + Communicate effectively with technical and non\-technical audiences. + Participate in agile development processes, including sprint planning, daily stand\-ups, and retrospectives. + Document technical designs, specifications, and procedures. + Contribute to the creation of roadmaps. * **Continuous Improvement:** + Stay up to date with the latest .NET technologies and industry trends. + Identify and implement opportunities to improve software development processes and tools. + Conduct research and development to explore new technologies and approaches. + Promote and implement DevOps practices. **Qualifications:** * Bachelor's or masters degree in Computer Science, Software Engineering, or a related field. * 8\+ years of experience in software development, with a strong focus on the .NET stack. * Proven experience in designing and implementing complex software architectures. * Extensive experience with C\#, ASP.NET Core, Entity Framework, and related technologies. * Experience with cloud platforms (e.g., Azure, AWS) is highly desirable. * Experience with microservices architecture and containerization (Docker, Kubernetes) is a plus. * Proven experience with relational databases (e.g., SQL Server, PostgreSQL) and NoSQL databases. * Expert\-level knowledge of the .NET framework and related technologies. * Strong understanding of software design patterns and principles. * Proficiency in object\-oriented programming and design. * Experience with RESTful APIs and web services. * Knowledge of front\-end technologies (e.g., JavaScript, Angular, React) is a plus. * Strong understanding of software testing methodologies and tools. * Experience with CI/CD pipelines and DevOps practices. * Strong knowledge of security best practices. * Excellent problem\-solving and analytical skills. * Strong leadership skills. * Effective communication and collaboration skills. * Ability to work independently and as part of a team. * Strong attention to detail and a commitment to quality. * Ability to adapt to change.


