diff --git a/assets/js/VacancyPage.jsx b/assets/js/VacancyPage.jsx
index efbe3c50707701249f06ae17cd02b3be540df2bb..fd469a4132a2abb49c4c203ec27e5899abf9b0ec 100644
--- a/assets/js/VacancyPage.jsx
+++ b/assets/js/VacancyPage.jsx
@@ -1,8 +1,8 @@
 import React from 'react';
 import Tabs from './components/Tabs';
 import Pane from './components/Pane';
+import Storage from './lib/Storage';
 import VacancyList from './components/VacancyList';
-import Server from './lib/Server';
 
 export default class VacancyPage extends React.Component {
 
@@ -20,27 +20,19 @@ export default class VacancyPage extends React.Component {
 
   handleItemClick = (e, { name }) => this.setState({ activeItem: name });
 
-  // fetchVacancies(url) {
-  //   console.log("maho");
-  //   Server.get(url).then((data) => {
-  //     this.setState({ vacancies: data });
-  //   }, () => {
-  //   });
-  // }
-
   render() {
-    const data = [{ data1: 'Software Enggineer' }, { data1: 'System Analyst' }];
+    const student = Storage.get('user-data').student;
 
     return (<div>
       <Tabs selected={0}>
         <Pane label="Semua Lowongan" >
-          <VacancyList url="/vacancies/" />
+          <VacancyList key={1} url="/vacancies/" />
         </Pane>
         <Pane label="Lamaran saya" >
-          <VacancyList url="/b" />
+          <VacancyList key={2} url={`/students/${student.id}/applied-vacancies/`} />
         </Pane>
         <Pane label="Lamaran Ditandai" >
-          <VacancyList url="/c" />
+          <VacancyList key={3} url={`/students/${student.id}/bookmarked-vacancies/`} />
         </Pane>
       </Tabs>
     </div>
diff --git a/assets/js/components/ModalAlert.jsx b/assets/js/components/ModalAlert.jsx
index ce5e26383a19688132a7d85cf43c60cb58e09960..0bae7cc1f17d34d97fcddc54c4e2786586a80f56 100644
--- a/assets/js/components/ModalAlert.jsx
+++ b/assets/js/components/ModalAlert.jsx
@@ -25,7 +25,7 @@ export default class ModalAlert extends React.Component {
 
   handleOpen() {
     const requestData = { coverLetter: this.props.coverLetter };
-    let studentId = Storage.post('user-data.student.id');
+    const studentId = Storage.get('user-data').student.id;
     Server.post(`/students/${studentId}/application`, requestData).then((data) => {
       this.setState({
         header: 'Pendaftaran Berhasil',
diff --git a/assets/js/components/VacancyList.jsx b/assets/js/components/VacancyList.jsx
index 3e313332db1e9ebed5e8c44413c6db704430965b..1d63ab713793cef2ae04416fd6968c741cb53506 100644
--- a/assets/js/components/VacancyList.jsx
+++ b/assets/js/components/VacancyList.jsx
@@ -11,27 +11,25 @@ export default class VacancyList extends React.Component {
 
   constructor(props) {
     super(props);
-    /* istanbul ignore next */
-    this.state = { vacancies: [] };
     Server.get(this.props.url, false).then((data) => {
       this.setState({ vacancies: data });
-    }, () => {
     });
+    /* istanbul ignore next */
+    this.state = { vacancies: [] };
     this.generateVacancies = this.generateVacancies.bind(this);
   }
 
+
   generateVacancies() {
-    return this.state.vacancies.map((vacancy, index) =>
+    return this.state.vacancies.map(vacancy =>
       <Lowongan key={vacancy.id} data={vacancy} />,
     );
   }
 
 
-  render = () => {
-    return (
-      <Item.Group relaxed>
-        { this.generateVacancies() }
-      </Item.Group>
-    );
-  }
+  render = () => (
+    <Item.Group relaxed>
+      { this.generateVacancies() }
+    </Item.Group>
+  );
 }
\ No newline at end of file
diff --git a/core/views/vacancies.py b/core/views/vacancies.py
index 9613b0083c56203ffbd5a03047c66f5e45487f2a..ea75e5874a8c86602583c65f9983db5543bb401e 100644
--- a/core/views/vacancies.py
+++ b/core/views/vacancies.py
@@ -27,8 +27,8 @@ class ApplicationViewSet(viewsets.GenericViewSet):
 
     def list(self, request, student_id):
         student = get_object_or_404(Student.objects.all(), pk=student_id)
-        applications = Application.objects.filter(student=student)
-        return Response(ApplicationSerializer(applications, many=True, context={'request': request}).data)
+        vacancies = student.applied_vacancies
+        return Response(VacancySerializer(vacancies, many=True, context={'request': request}).data)
 
     def create(self, request, student_id):
         cover_letter = request.data.get('cover_letter')