Mejora con C#: 7 proyectos para tu portafolio que impresionarán al empleador

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Por qué tu portafolio en C# lo decide todo, o cómo no perderte entre cientos de currículums

\n\n

Aprendiste la sintaxis, entendiste las clases, interfaces e incluso escribiste un par de programas de consola. Felicidades, dejaste de ser un "novato". Pero aquí está el problema: para una vacante de desarrollador Junior C# llegan entre 50 y 100 respuestas. ¿Cómo sabrá el de RRHH o el líder técnico que eres ese diamante y no otro "garante de empleo" de un curso?

\n\n

La respuesta es simple: tu portafolio en C#. No una lista de tecnologías, sino proyectos vivos que se puedan tocar (o al menos ejecutar localmente). En este artículo he recopilado 7 ideas para el portafolio de un desarrollador C#, desde simples hasta de nivel medio. Cada idea no es solo "haz una calculadora", sino un caso completo con explicaciones de por qué es genial y qué código escribir.

\n\n

Criterios de selección: qué hace que un proyecto sea "el mejor" para el portafolio

\n\n

Antes de lanzarnos al código, acordemos: un proyecto en el portafolio debe resolver tres tareas:

\n
    \n
  • Mostrar dominio del stack — no solo C#, sino ASP.NET Core, Entity Framework, trabajo con API.
  • \n
  • Demostrar comprensión de la arquitectura — patrones, SOLID, separación de responsabilidades.
  • \n
  • Resolver un problema real — aunque sea una utilidad personal, debe ser útil.
  • \n
\n\n

Intencionalmente no incluí "Lista de Tareas" o "Calculadora" — eso es básico y ya no impresiona a nadie. ¡Allá vamos!

\n\n

1. Bot de Telegram para gestión de tareas (con recordatorios)

\n\n

Los bots de Telegram son el formato ideal para el portafolio. Son compactos, visualmente claros y trabajan con una API real. Tu bot recibirá comandos, guardará tareas en una base de datos y enviará recordatorios.

\n\n

Por qué es genial:

\n
    \n
  • Trabajo con una API externa (Telegram Bot API).
  • \n
  • Tareas en segundo plano (Hangfire o BackgroundService).
  • \n
  • Entity Framework Core + SQLite (o PostgreSQL).
  • \n
\n\n

Ejemplo de código: iniciar un servicio en segundo plano para recordatorios

\n
public class ReminderService : BackgroundService\n{\n    private readonly IServiceProvider _services;\n    private readonly ILogger<ReminderService> _logger;\n\n    public ReminderService(IServiceProvider services, ILogger<ReminderService> logger)\n    {\n        _services = services;\n        _logger = logger;\n    }\n\n    protected override async Task ExecuteAsync(CancellationToken stoppingToken)\n    {\n        while (!stoppingToken.IsCancellationRequested)\n        {\n            using (var scope = _services.CreateScope())\n            {\n                var db = scope.ServiceProvider.GetRequiredService<AppDbContext>();\n                var now = DateTime.UtcNow;\n                var dueTasks = db.Tasks.Where(t => t.DueDate <= now && !t.IsNotified).ToList();\n\n                foreach (var task in dueTasks)\n                {\n                    // Enviar mensaje a través de TelegramClient\n                    await SendTelegramMessage(task.UserId, $"Recordatorio: {task.Title}");\n                    task.IsNotified = true;\n                }\n                await db.SaveChangesAsync();\n            }\n            await Task.Delay(TimeSpan.FromMinutes(1), stoppingToken);\n        }\n    }\n}\n
\n\n

Consejo: agrega los comandos /start, /add, /list, /done. Y obligatorio: un Dockerfile para que el bot se ejecute con un solo clic.

\n\n

2. Parser de páginas web con exportación a Excel

\n\n

Crea una aplicación de consola que parseé, por ejemplo, productos de Ozon o Wildberries (o cualquier otro sitio) y guarde el resultado en un archivo .xlsx. Esto demostrará que sabes trabajar con HTML, HTTP y librerías como EPPlus o ClosedXML.

\n\n

Qué usamos:

\n
    \n
  • HttpClient para las solicitudes.
  • \n
  • HtmlAgilityPack o AngleSharp para el parseo.
  • \n
  • EPPlus para generar Excel.
  • \n
\n\n

Ejemplo de código: parseo de títulos

Blogs

Book Recommendations