Boss.Az Console Job Portal is a C#/.NET Framework console application that simulates a recruitment platform. The application supports worker and employer registration, sign-in, vacancy management, CV management, vacancy search, job applications, notifications, and JSON-based local persistence.
The project was built as an exam/final project and now uses a clearer source layout so the domain model, authentication flow, infrastructure helpers, presentation helpers, and application entry point are easier to navigate.
- Worker and employer sign-up/sign-in flows.
- Employer vacancy creation, listing, deletion, and applicant review.
- Worker CV creation, listing, deletion, and job application flow.
- Vacancy search and filtering from the console interface.
- Notification delivery between employers and workers.
- Local JSON persistence through
Newtonsoft.Json. - Console UI helpers for menu navigation and formatted output.
- Exception logging to
Errors.txt.
- C#
- .NET Framework 4.7.2
- Newtonsoft.Json 13.0.1
- Visual Studio/MSBuild project format
.
├── App.config
├── BossAZ.csproj
├── packages.config
├── Properties/
│ └── AssemblyInfo.cs
└── src/
├── App/ # Program entry point and main controller
├── Authentication/ # Sign-in and sign-up flows
├── Domain/ # Core entities: workers, employers, CVs, vacancies
├── Exceptions/ # Custom application exceptions
├── Infrastructure/ # File and JSON persistence helpers
├── Presentation/ # Console UI and warning helpers
└── Services/ # Search and menu extension behavior
Generated build output (bin/, obj/), IDE user files, NuGet restore output, and runtime files are intentionally ignored by Git.
- Visual Studio 2019 or newer, or MSBuild with .NET Framework 4.7.2 targeting pack.
- NuGet package restore enabled.
-
Clone the repository:
git clone https://github.com/aykhan019/Cs_ExamProject.git cd Cs_ExamProject -
Open
BossAZ.csprojin Visual Studio. -
Restore NuGet packages if Visual Studio does not do it automatically.
-
Build and run the project.
For a command-line build with Mono:
nuget install packages.config -OutputDirectory packages
xbuild /p:Configuration=Debug BossAZ.csprojThe application seeds sample workers, employers, CVs, and vacancies at startup and writes the current database to database.json in the working directory.
Use the keyboard-driven console menus to sign in or create an account:
- Choose Worker to manage CVs, browse/search vacancies, apply for jobs, and view notifications.
- Choose Employer to manage vacancies, review applicants, hire workers, and view notifications.
Runtime errors are written to Errors.txt for debugging.
Click the image above to view the project demonstration.
This project is licensed under the MIT License.