About the Opportunity:
As a Principal Software Engineer at Sagent, you will be a key leader in our technology department, leveraging your extensive experience and theoretical knowledge base to drive the design, development, and implementation of innovative software solutions.
You will play a critical role in determining software application design requirements, ensuring the successful implementation of software improvements, and generating software engineering policies, standards, and procedures.
Additionally, you will provide guidance to others as a technical lead and contribute to all aspects of software development, from detailed programming to high-level architecture design.
Your day-to-day at Sagent:
Software Development Leadership:
- Lead the design, development, testing, debugging, and implementation of software solutions to meet business requirements and technical specifications.
Application Design Requirements:
- Determine software application design requirements based on business needs, technical considerations, and industry best practices.
Implementation and Monitoring:
- Ensure the successful implementation and monitoring of software application improvements to increase efficiency and effectiveness.
Policy and Procedure Generation:
- Generate software engineering policies, standards, and procedures to ensure consistency and quality across software development efforts.
Technical Leadership:
- Provide guidance and mentorship to junior team members, leveraging your technical expertise to support their professional development and drive project success.
Cross-functional Collaboration:
- Collaborate with cross-functional teams to understand business requirements, align software development efforts with organizational goals, and drive project success.
Innovation and Continuous Improvement:
- Drive innovation and continuous improvement initiatives within the software engineering team, staying updated on industry trends, emerging technologies, and best practices.
We would love to hear from you if you have:
- Bachelor's degree in a relevant discipline with at least ten years of experience in an applicable field, or completion of an advanced degree (Masters or higher) in an applicable and relevant field, or equivalent experience will be considered in lieu of a degree.
- Minimum of ten years of experience in software engineering roles, with a focus on designing, developing, testing, debugging, and implementing software solutions.
- Demonstrated expertise in software application design and development, with a proven ability to translate business requirements into technical specifications.
- Strong analytical and problem-solving skills, with the ability to address complex technical challenges and drive innovative solutions.
- Excellent leadership and communication skills, with the ability to provide guidance to others and collaborate effectively in cross-functional teams.
- Experience in generating software engineering policies, standards, and procedures is preferred.
- Proficiency in all aspects of software development, from detailed programming to high-level architecture design, is essential.
- React/Redux – Expertise in react hooks and context API, knowledge of performance optimization techniques.
- Java – expertise java SE and java EE, spring framework spring boot.
- Node JS - proficient in stream and streaming data, experience in serverless architecture and frameworks.
- .Net core – experience in .net core and entity framework, micro service architecture
- Azure and GCP – Should have knowledge on deploying service into Kubernetes.
- Experience with Azure dev ops CICD pipelines.
- Should work in Agile ceremonies.
- Micro services – should worked and created the services.
- SQL Server – proficient in SQL queries and store procedures, String knowledge in performance tuning, familiarity with security best practices.
- Mongo DB: Proficient in schema design, indexing, and using MongoDB Atlas.
- User Authentication using JWT Token.
- Experience in caching mechanism.
#LI - AN1