Senior Back-end Software Developer - Manila
Peregrine Global Services is seeking a skilled .NET Developer to join our mission of developing values-based leaders through innovative software and services. In this vital role, you'll contribute to creating scalable, secure back-end systems that enhance user engagement, embodying our commitment to excellence and continuous improvement.
As a remote team member, you will fully own applications from design to operations within our DevOps culture, fostering a collaborative environment to deliver solutions that propel Peregrine forward. Your responsibilities include designing robust architectures using .NET technologies, integrating systems into our DevOps culture, and ensuring high standards of quality and reliability.
This position requires a strong background in .NET technologies to design and develop innovative software and services. This critical role involves developing scalable, secure back-end systems that seamlessly integrate with front-end JavaScript frameworks, ensuring an engaging user experience.The ideal candidate brings deep expertise in domain-driven design, microservices architecture, and event-driven systems, with a strong commitment to maintainability, observability, and security across distributed applications.
Will play an important role in advancing our software development efforts, fully owning applications from design to operations within our DevOps culture. Supporting Client Services, Sales & Marketing, and Quality Control functions and contributing to a culture of excellence and continuous improvement.Leveraging CI/CD pipelines for automated deployment and applying secure coding practices; ensuring that developed software meets the highest standards of quality and reliability. Strong communication skills are essential, as is the ability to work effectively to collaborate to deliver software solutions that drive our company forward.
This 100% remote position is for self-starters with good communication skills, work ethic, and the ability to participate in all aspects of the agile software development life cycle.
Responsibilities and Functions- Designing and implementing robust, scalable back-end architectures using .NET technologies, following domain-driven design (DDD) principles to ensure alignment with business requirements.
- Designing and developing distributed systems using microservices and event-driven architecture, ensuring that services are decoupled, independently deployable, and communicate effectively via asynchronous messaging patterns (e.g., using message queues or event buses).
- Designing, implementing, and managing databases that support the application's data storage and retrieval needs, using Entity Framework Core or similar ORM tools for data access.
- Ensuring APIs are designed with performance, scalability, and security in mind.
- Applying migrations and managing schema changes in a controlled and reliable manner.
- Integrating back-end systems into the organization's DevOps culture, utilizing CI/CD pipelines for automated testing and deployment.
- Communicating technical designs and decisions effectively to both technical and non-technical team members.
- Documenting critical system modules, configurations, and deployment procedures to facilitate understanding and maintenance by both current and future team members.
- Encouraging a culture of documentation within the development team, emphasizing the importance of well-documented code, APIs, and system architectures for long-term project success and scalability.
- Working with cloud software and infrastructure such as JIRA, GitHub, and AWS.
- Adhere to a general DevOps philosophy, fully owning applications from design to operations.
- Document bugs with clear and straightforward reproducible steps and check similar issues that are being tested.
- Assist in training and/or writing instructions for end-users upon the release of project deliverables.
- Keeping abreast of the latest .NET technologies, frameworks, and best practices to continuously improve the back-end systems; contributing to the technical growth of the team by sharing knowledge with other developers.
- Participate in team meetings and teleconferences as required; schedule meetings as required.
- Proficient with C# and .NET development, including the .NET Framework, .NET Core, Entity Framework, Web API, and SQL Server.
- Proficient with implementing secure authentication and authorization mechanisms using JSON Web Tokens (JWT) and OAuth 2.0 framework to protect web applications and APIs.
- Experience in designing and implementing RESTful APIs that efficiently interface with JavaScript front-ends.
- Knowledge of domain-driven design (DDD) principles to architect systems that reflect the business domain and facilitate rapid deployment and scalability.
- Familiarity with microservices architectures and the ability to develop services that are loosely coupled and independently deployable.
- Knowledge of Continuous Integration/Continuous Deployment (CI/CD) pipelines within a DevOps culture using GitHub Actions and the AWS SDK.
- Familiarity with secure coding practices, understanding of common security vulnerabilities and their mitigation strategies to protect the application against threats, ensuring the confidentiality, integrity, and availability of user data in web applications.
- Willing to participate in product design reviews and provide input and recommendations on functional requirements, schedules, issues, and risks.
- Have a sense of ownership and pride in your performance and its impact on the team’s and company’s success.
- Strong communication and collaboration skills, capable of working effectively in a dynamic, cross-functional team environment.
- Self-motivated and able to work with minimal supervision.
- Fully Remote, 36-hour work weeks.
- 12-month, annually renewable contractual position.
- Paid Holidays are provided.
- This job will operate in a professional, remote office environment. If hired full-time, computer equipment (peripherals) will be provided by the company.
- Limited to no travel is expected for this position.
- Passionate and professional engineer with 5+ years of related .NET development experience.
- At least 2 years of leading and/or mentoring back-end engineering teams in delivering complex projects.
- Excellent organizational, written, and communication skills.
- Must be able to speak and write fluently in English.
- Must be able to devote a minimum of 36 hours a week (less paid holidays) to the company.
- Bachelor’s degree in computer science, engineering, or a related field.
- Previous experience developing back-end software utilizing C#/.NET at a Senior level for at least 5 years.
- Experience in roles of leadership or other areas where the role leads to organizational or collaborative planning with others.
- Please note this job description is not designed to cover or contain a comprehensive listing of activities, duties, or responsibilities that are required for this job. Duties, responsibilities, and activities may change at any time with or without notice.