5+ years of experience in C#/.NET Core development., Proficient in Blazor, Docker, MS SQL, and Microsoft Azure., Strong understanding of software engineering best practices and principles such as OOP, SOLID, and MVVM., Conversational English skills are required..
Key responsabilities:
Collaborate with the Product Owner to refine backlog and break down stories into functional slices.
Engineer scalable, high-quality solutions and own technical design for sprints.
Mentor junior developers and oversee code integration and quality assurance processes.
Promote a strong developer community and lead knowledge-sharing sessions.
Report This Job
Help us maintain the quality of our job listings. If you find any issues with this job post, please let us know.
Select the reason you're reporting this job:
We are a young and growing company, with operations in Medellin and Bogota, focused on the generation of technological solutions in synergy with our customers and our team so that these solutions add value within their organizations and their business processes.
At Softgic, we work with the coolest, with those who build, with those who love what they do, with those who have 100 in attitude, because that's our #Cooltura. Join our purpose of making life easier with technology and be part of our team as a Principal C#/.Net FullStack Engineer - (75% BE / 25% FE).
Compensation:
USD 3K - 3.5K/month.
Location:
Remote (for Colombia and Argentina residents)
Mission of Softgic:
In Softgic S.A.S. we work for the digital and cognitive transformation of our clients, aware that quality is an essential factor for us, we incorporate the following principles into our policy:
Deliver quality products and services.
Achieve the satisfaction of our internal and external clients.
Encourage in our team the importance of training to grow professionally and personally through development plans.
Comply with the applicable legal and regulatory requirements.
Promote continuous improvement of the quality management system.
What makes you a strong candidate:
You are expert in .NET Core, Blazor, C#, and full-stack development.
You are proficient in Docker, MS SQL, MVVM, and Microsoft Azure.
English - Conversational.
Responsibilities and more:
You Are an Agile Team Member: As part of a self-organizing team, you contribute to success by:
Collaborating with the Product Owner to refine backlog and break down stories into small functional slices.
Maintaining commitment and displaying ownership in tasks.
Encouraging a positive team culture by supporting innovation and new ideas.
Proactively seeking skill development and learning opportunities.
Asking for assistance when facing challenges.
Balancing best practices with business value in decision-making.
Ensuring timely completion of committed stories/tasks within sprints.
You Are Also the Principal Engineer
As the premier developer on the team, you engineer scalable, high-quality solutions that align with strategic architectural goals.
Principal Accountability | Technical Sprint Planning
Owns technical design for sprints, including high-level flow diagrams, ERDs, and service contracts.
Ensures team understanding and adherence to technical plans.
Designs solutions with testability, modularity, and determinism in mind.
Maintains awareness of dependent projects and their impact on design.
Guides team members in defining clear, small, and testable tasks.
Engages in design discussions with the team and higher-level architectural groups.
Aligns team direction with enterprise architectural vision.
Defines technical acceptance criteria for stories where necessary.
Owns and manages the technical backlog, collaborating with the PO for prioritization.
Principal Accountability | Software Development
Clearly communicates solution details to the team.
Encourages collective code ownership through CI and frequent check-ins.
Implements and enforces unit testing with a goal of 80%+ code coverage.
Continuously addresses technical debt and escalates when necessary.
Acts as a mentor and resource for junior developers.
Oversees the merge process and code integration.
Conducts root cause analysis on defects to ensure proper resolutions.
Maintains a local development environment to reduce deployment risks.
Principal Accountability | Software Inspection
Ensures daily code check-ins and enforces best practices.
Uses static code analysis tools to identify vulnerabilities, anti-patterns, and defects.
Monitors unit test results and maintains accountability for quality.
Evaluates cyclomatic complexity and initiates refactors when necessary.
Ensures transparency in the code inspection process through CI and reporting.
Enforces the team’s Definition of Done and reviews QA test plans for technical coverage.
Conducts internal and cross-team code reviews.
Principal Accountability | Release Planning
Adheres to and enforces a well-defined code promotion process.
Supports and ensures timely releases with adherence to release activities.
Resolves defects efficiently and identifies tactical risks.
Ensures operational readiness for deployment, including dry-runs and production rollouts.
Coordinates with infrastructure teams for access control, service accounts, and permissions.
Prepares clear deployment documentation detailing changes and target environments.
Principal Accountability | Community & Leadership
Promotes a strong developer community within and beyond the team.
Leads formal and informal knowledge-sharing sessions (e.g., lunch & learn).
Acts as a bridge between the team and management to ensure necessary skills are present.
Encourages continuous learning, self-study, and best practice adoption.
Requirements
5+ years of experience using C#/.NET core.
Experience creating Blazor components and using components libraries eg: Dev Express.
Tailwind CSS / MUI components - desired.
Entity Framework or any other ORM experience.
Experience building integrations with 3rd party services is a must.
Experience building solutions following the MVVM architecture pattern.
Experience with Continuous Integration and Delivery (CI/CD), preferably with Azure DevOps.
Excellent interpersonal and teamwork skills to facilitate collaborative problem solving amongst team members.
Professional software engineering experience applying best practice software engineering including separation of concerns, high cohesion, low coupling, modularization, encapsulation and information hiding, interfaces, and dependency injection.
Professional software engineering experience applying object-oriented programming (OOP) principles such as SOLID, DDD and TDD.
Experience with MS SQL.
Proven experience delivering solutions for complex distributed systems in Azure.
Docker and containerization.
Nice To Have: Understanding of Visual Basic for applications code.
Experience with small teams that move fast - all members are expected to achieve maximum results with minimal direction.