diff --git a/assets/js/ApplicantPage.jsx b/assets/js/ApplicantPage.jsx
index 44dba9f6dd3ef9bb4ec61133e8cbb03ca0fdd433..703d5457907b209bd86fbe31113712bb9bcd994a 100755
--- a/assets/js/ApplicantPage.jsx
+++ b/assets/js/ApplicantPage.jsx
@@ -77,6 +77,14 @@ export default class ApplicantPage extends React.Component {
           />
         </div>
         <Tabs selected={0}>
+          <Pagination
+            key={0 + this.state.refresh}
+            url={`${this.state.selected}`}
+            label="Semua Lamaran"
+            child={
+              <ApplicantList companyId={company.id} status={Applicant.APPLICATION_STATUS.ALL} />
+            }
+          />
           <Pagination
             key={1 + this.state.refresh}
             url={`${this.state.selected}?status=${Applicant.APPLICATION_STATUS.NEW}`}
diff --git a/assets/js/__test__/ApplicantPage-test.jsx b/assets/js/__test__/ApplicantPage-test.jsx
index ddd238ab7e1761ef865134101cf57b3e7f4ab1cd..a193486e3d87ef1561bd977f373c5cac8b0e73ec 100755
--- a/assets/js/__test__/ApplicantPage-test.jsx
+++ b/assets/js/__test__/ApplicantPage-test.jsx
@@ -190,7 +190,7 @@ describe('ApplicantPage', () => {
   it('renders all status tabs', () => {
     const applicantPage = ReactTestUtils.renderIntoDocument(<ApplicantPage user={companyUser} />);
     const paginationTabs = ReactTestUtils.findRenderedComponentWithType(applicantPage, Tabs);
-    expect(paginationTabs.props.children.length).to.equal(6);
+    expect(paginationTabs.props.children.length).to.equal(7);
   });
 
   it('handle dropdown changes without problem', () => {
diff --git a/assets/js/__test__/components/Applicant-test.jsx b/assets/js/__test__/components/Applicant-test.jsx
index d9db8170b088fb87a80b90795feb1049b08f1944..a506b72c8f157df36c7b5c9cdd958e027f7cc885 100755
--- a/assets/js/__test__/components/Applicant-test.jsx
+++ b/assets/js/__test__/components/Applicant-test.jsx
@@ -52,4 +52,22 @@ describe('Applicant', () => {
     expect(applicant).to.exist;
     fetchMock.restore();
   });
+
+  it('show application status if in all status', () => {
+    fetchMock.get('*', stub);
+    const applicant = ReactTestUtils.renderIntoDocument(
+      <Applicant data={stub.data} updateStatus={stub.updateStatus} isAll />,
+    );
+    expect(applicant.getApplicationStatus()).to.equal('Ditandai');
+    fetchMock.restore();
+  });
+
+  it('not show application status if not in all status', () => {
+    fetchMock.get('*', stub);
+    const applicant = ReactTestUtils.renderIntoDocument(
+      <Applicant data={stub.data} updateStatus={stub.updateStatus} isAll={false} />,
+    );
+    expect(applicant.getApplicationStatus()).to.equal('');
+    fetchMock.restore();
+  });
 });
diff --git a/assets/js/__test__/components/ApplicantList-test.jsx b/assets/js/__test__/components/ApplicantList-test.jsx
index 0a907611d4bb5a7738ee5382dd141aca3da3b43a..6205cb4645765aa62bcbb428d5b020a8a72ea825 100755
--- a/assets/js/__test__/components/ApplicantList-test.jsx
+++ b/assets/js/__test__/components/ApplicantList-test.jsx
@@ -82,5 +82,12 @@ describe('ApplicantList', () => {
     applicantList.updateStatus(1, Applicant.APPLICATION_STATUS.BOOKMARKED);
     expect(applicantList.state).to.not.equal(response);
   });
+
+  it('can show all applicant', () => {
+    const applicantList = ReactTestUtils.renderIntoDocument(
+      <ApplicantList status={Applicant.APPLICATION_STATUS.ALL} />);
+    // eslint-disable-next-line no-unused-expressions
+    expect(applicantList).to.exist;
+  });
 });
 
diff --git a/assets/js/components/Applicant.jsx b/assets/js/components/Applicant.jsx
index 59307611538824e2f964a6b8c1d375b8cfb38b1e..1677b80ca9b253d096654813673c736719194462 100755
--- a/assets/js/components/Applicant.jsx
+++ b/assets/js/components/Applicant.jsx
@@ -10,6 +10,7 @@ export default class Applicant extends React.Component {
   static propTypes = {
     data: React.PropTypes.object.isRequired,
     updateStatus: React.PropTypes.func.isRequired,
+    isAll: React.PropTypes.bool.isRequired,
   };
 
   static APPLICATION_STATUS = {
@@ -19,9 +20,10 @@ export default class Applicant extends React.Component {
     REJECTED: 3,
     ACCEPTED: 4,
     FINISHED: 6,
+    ALL: 1000,
   };
 
-  static APPLICATION_STATUS_TEXT = ['Baru', 'Sudah Dibaca', 'Ditandai', 'Diterima', 'Ditolak'];
+  static APPLICATION_STATUS_TEXT = ['Baru', 'Sudah Dibaca', 'Ditandai', 'Ditolak', 'Diterima', '', 'Selesai'];
 
   constructor(props) {
     super(props);
@@ -47,6 +49,10 @@ export default class Applicant extends React.Component {
     }
   };
 
+  getApplicationStatus() {
+    return this.props.isAll ? Applicant.APPLICATION_STATUS_TEXT[this.props.data.status] : '';
+  }
+
   render() {
     return (
       <Item>
@@ -77,6 +83,7 @@ export default class Applicant extends React.Component {
                   />
                 </Grid.Row>
                 <ApproveModal updateStatus={this.props.updateStatus} data={this.props.data} />
+                <br /><br /><b>{this.getApplicationStatus()}</b>
               </Grid.Column>
             </Grid.Row>
           </Item.Extra>
diff --git a/assets/js/components/ApplicantList.jsx b/assets/js/components/ApplicantList.jsx
index 7dd3a3a840e981b0ef6022e591672089dc75fb03..abd6424add56f293a13997f493e7dd99851d0f2b 100755
--- a/assets/js/components/ApplicantList.jsx
+++ b/assets/js/components/ApplicantList.jsx
@@ -45,9 +45,12 @@ export default class ApplicantList extends React.Component {
       );
     }
     return this.state.applications.map(application =>
-      application.status === this.props.status && (<Applicant
+      (application.status === this.props.status ||
+        this.props.status === Applicant.APPLICATION_STATUS.ALL) &&
+      (<Applicant
         key={application.id} data={application}
         updateStatus={this.updateStatus}
+        isAll={this.props.status === Applicant.APPLICATION_STATUS.ALL}
       />),
     );
   }