This content originally appeared on DEV Community and was authored by Abraham Dahunsi
This is a submission for the Midnight Network “Privacy First” Challenge – Protect That Data prompt
What I Built
PrivJob is a revolutionary decentralized job board that leverages zero-knowledge proofs and blockchain technology to create a privacy-first hiring platform. In today’s digital age, job seekers are increasingly concerned about their personal data privacy, while employers struggle to verify candidate qualifications without exposing sensitive information. PrivJob solves these challenges by enabling trustless verification of professional credentials while maintaining user privacy.
The platform allows job seekers to create verifiable professional profiles using attestations and zero-knowledge proofs, ensuring they only share necessary information with potential employers. Employers can post job listings with specific requirements, and the platform’s smart matching system connects them with qualified candidates without exposing sensitive data. The entire process is secured by Midnight Network’s privacy-preserving blockchain technology, ensuring that personal information remains confidential while still allowing for trustless verification of credentials.
Demo
Key Screenshots:
-
Job Seeker Dashboard
- View and manage applications with privacy controls
- Track application status with zero-knowledge verification
- Manage professional credentials and attestations
-
Employer Portal
- Post job listings with privacy-preserving requirements
- Review candidate applications with verified credentials
- Initiate contact requests without exposing personal information
-
Verification Flow
- Visual representation of zero-knowledge proof verification
- Credential management interface
- Privacy settings and data sharing controls
How I Used Midnight’s Technology
Midnight Network’s technology stack was instrumental in building PrivJob’s privacy-preserving features. The platform utilizes Midnight’s Compact language to create smart contracts that handle job postings, applications, and credential verification without exposing sensitive data. The zk-SNARKs implementation allows for efficient verification of candidate qualifications while maintaining privacy.
The decentralized identity system built on Midnight enables users to create and manage their professional identities securely. Job seekers can selectively disclose information through zero-knowledge proofs, proving they meet job requirements without revealing the underlying data. This is particularly valuable for sensitive information like salary history or specific employment dates.
Midnight’s confidential tokens are used for the platform’s reputation system, allowing for verifiable feedback and ratings while protecting user identities. The blockchain’s privacy features ensure that all interactions on the platform are confidential by default, with users having full control over what information they choose to share.
Data Protection as a Core Feature
Data protection is not just an afterthought in PrivJob – it’s the foundation of the entire platform. Traditional job boards often require excessive personal information before any meaningful interaction can occur, creating significant privacy risks. PrivJob flips this model by implementing privacy by design at every level.
Professional credentials are stored as verifiable credentials on the Midnight blockchain, allowing candidates to prove their qualifications without revealing the underlying documentation. The platform uses zero-knowledge proofs to verify that candidates meet specific job requirements (e.g., “has 5+ years of experience” or “holds a relevant certification”) without exposing the actual details of their experience or certification.
The contact request system is designed to protect both parties. Employers can only see a candidate’s full profile after the candidate has approved a contact request, and all communications are encrypted end-to-end. Even the matching algorithm is privacy-preserving, using secure multi-party computation to match candidates with jobs without either party needing to reveal their full criteria.
Set Up Instructions / Tutorial
Prerequisites
Before getting started with PrivJob, ensure you have the following installed:
- Node.js (v18 or later)
- npm or yarn
- Git
- Midnight Network node (for local development)
- PostgreSQL database
- Redis server
Backend Setup
- Clone the repository and install dependencies:
git clone https://github.com/yourusername/privjob.git
cd privjob/backend
npm install
- Set up environment variables by creating a
.env
file in the backend directory with the following variables:
DATABASE_URL=postgresql://user:password@localhost:5432/privjob
REDIS_URL=redis://localhost:6379
JWT_SECRET=your_jwt_secret_here
MIDNIGHT_NETWORK_URL=https://testnet.midnight.network
- Run database migrations:
npx prisma migrate dev
- Start the development server:
npm run dev
Frontend Setup
- Navigate to the frontend directory and install dependencies:
cd ../frontend
npm install
- Create a
.env.local
file with the following variables:
NEXT_PUBLIC_API_URL=http://localhost:3000/api/v1
NEXT_PUBLIC_MIDNIGHT_NETWORK_URL=https://testnet.midnight.network
- Start the development server:
npm run dev
Running the Application
- Ensure your Midnight Network node is running locally
- Start the backend server
- Start the frontend development server
- Access the application at
http://localhost:3000
Creating Your First Job Posting
- Sign up as an employer
- Navigate to the dashboard and click “Post a Job”
- Fill in the job details and requirements
- Set privacy preferences for the application process
- Publish the job listing
Applying for Jobs as a Candidate
- Create a candidate profile
- Add verifiable credentials to your profile
- Browse available jobs and apply with one click
- Approve contact requests from interested employers
- Communicate securely through the platform’s encrypted messaging
Verifying Credentials
- Connect your digital wallet to the platform
- Navigate to the “Credentials” section
- Add verifiable credentials from supported issuers
- Generate zero-knowledge proofs for specific job requirements
- Share proofs with employers as needed
Conclusion
PrivJob represents a significant step forward in privacy-preserving recruitment technology. By leveraging Midnight Network’s advanced cryptographic primitives, we’ve created a platform where both job seekers and employers can interact with confidence, knowing their sensitive information remains protected. The combination of zero-knowledge proofs, decentralized identity, and secure messaging creates a recruitment ecosystem that prioritizes user privacy without sacrificing functionality or trust.
As the digital landscape continues to evolve, platforms like PrivJob will become increasingly important in maintaining user privacy while enabling meaningful professional connections. The technology stack and architecture we’ve developed can serve as a blueprint for other applications that require privacy-preserving verification of credentials and information.
For developers interested in contributing to PrivJob or building similar privacy-focused applications, we encourage you to explore the codebase and join our community of privacy advocates and blockchain enthusiasts. Together, we can build a more private and secure digital future.
This content originally appeared on DEV Community and was authored by Abraham Dahunsi