diff --git a/core/admin.py b/core/admin.py
index f587859f7ae27bb7b86d11afe76c04f72eed02e8..3dfa6ab93927bb1cb8f03c4bc12742dabd94d371 100755
--- a/core/admin.py
+++ b/core/admin.py
@@ -1,7 +1,13 @@
 from django.contrib import admin
 
+from core.models import Application
+from core.models import Vacancy
 from core.models.accounts import Company, Supervisor, Student
 
 admin.site.register(Company)
 admin.site.register(Student)
-admin.site.register(Supervisor)
\ No newline at end of file
+admin.site.register(Supervisor)
+admin.site.register(Vacancy)
+admin.site.register(Application)
+
+
diff --git a/core/migrations/0002_auto_20170320_1650.py b/core/migrations/0002_auto_20170320_1650.py
new file mode 100644
index 0000000000000000000000000000000000000000..2fee5e6771e81e82a55190ee51268d196695f42a
--- /dev/null
+++ b/core/migrations/0002_auto_20170320_1650.py
@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10.5 on 2017-03-20 09:50
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('core', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Application',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('student_npm', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='core.Student')),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Vacancy',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('verified', models.BooleanField(default=False)),
+                ('open_time', models.DateTimeField()),
+                ('close_time', models.DateTimeField()),
+                ('company_id', models.ManyToManyField(to='core.Company')),
+            ],
+        ),
+        migrations.AddField(
+            model_name='application',
+            name='vacancy_id',
+            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='core.Vacancy'),
+        ),
+    ]
diff --git a/core/models/__init__.py b/core/models/__init__.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..a551a3c9156af7195f135bf3dec6ff1f0e047b8a 100755
--- a/core/models/__init__.py
+++ b/core/models/__init__.py
@@ -0,0 +1,8 @@
+# __init__.py
+from core.models.accounts import Supervisor
+from core.models.accounts import Student
+from core.models.accounts import Company
+from core.models.vacancies import Vacancy
+from core.models.vacancies import Application
+
+
diff --git a/core/models/vacancies.py b/core/models/vacancies.py
new file mode 100644
index 0000000000000000000000000000000000000000..ded7ef302a56e92a057fd1d7506a29ef8480d4e6
--- /dev/null
+++ b/core/models/vacancies.py
@@ -0,0 +1,18 @@
+import os
+import uuid
+
+from django.db import models
+
+from core.models.accounts import Company, Student
+
+
+class Vacancy(models.Model):
+    company_id = models.ManyToManyField(Company)
+    verified = models.BooleanField(default=False)
+    open_time = models.DateTimeField()
+    close_time = models.DateTimeField()
+
+
+class Application(models.Model):
+    student_npm = models.OneToOneField(Student)
+    vacancy_id = models.OneToOneField(Vacancy)
\ No newline at end of file
diff --git a/core/views/accounts.py b/core/views/accounts.py
index 33bb4bb2c5b8a52cd165488a8c6dedbc575bd6e1..07d8ef8885bc42616eb07d9f95e67621c48848d2 100644
--- a/core/views/accounts.py
+++ b/core/views/accounts.py
@@ -6,7 +6,6 @@ from rest_framework.response import Response
 from core.models.accounts import Student, Company, Supervisor
 from core.serializers.accounts import UserSerializer, StudentSerializer, CompanySerializer, SupervisorSerializer
 
-
 class UserViewSet(viewsets.ModelViewSet):
     queryset = User.objects.all()
     serializer_class = UserSerializer