summaryrefslogtreecommitdiff
path: root/src/pages/work.js
blob: 92d5d627bf41467055c35b7d2e54672d127b1182 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
import React from 'react'

import Layout from '../components/layout'
import { Project } from '../components/project'

import startupOfTheYear from '../images/startup-of-the-year.jpg'
import brnklAppMap from '../images/brnkl-app-map-iphone.png'
import brnklAppAlerts from '../images/brnkl-app-alerts-iphone.png'
import brnklProduct from '../images/brnkl-product.jpg'
import raos from '../images/raos.jpg'

export const workHistory = [
  {
    name: 'Lead Software Developer',
    brief: 'BRNKL by Barnacle Systems',
    date: 'Sept 2017 - Feb 2019',
    projectDetails: [
      {
        header: 'Awards',
        listItems: [
          <>
            <a href="https://sbbcawards.ca/winners/"> Best New Concept</a>,
            Small Business BC, Feb 2019
          </>,
          <>
            <a href="https://www.passagemaker.com/trawler-news/vancouver-boat-show-best-in-show-awards">
              {' '}
              Most Innovative (Best In Show)
            </a>
            , Vancouver International Boat Show, Feb 2019
          </>,
          <>
            <a href="http://viatecawards.com/2018-recipients/#elementor-tab-title-6044">
              {' '}
              Startup of The Year
            </a>
            , VIATEC, June 2018
          </>
        ],
        images: [
          { imgUrl: startupOfTheYear, caption: 'VIATEC Startup of The Year' }
        ]
      },
      {
        header: <a href="https://app.brnkl.io"> App</a>,
        listItems: [
          'Implemented with TypeScript, Angular, RxJS, and Redux',
          'Deployed on iOS, Android, and the web',
          'Live data using RxJS and Firebase Realtime Database',
          'Push alerts implemented over Firebase Cloud Messaging'
        ],
        images: [
          {
            imgUrl: brnklAppMap,
            caption: 'BRNKL App Map View',
            noShadow: true
          },
          {
            imgUrl: brnklAppAlerts,
            caption: 'BRNKL App Alert View',
            noShadow: true
          }
        ]
      },
      {
        header: 'Backend',
        listItems: [
          'Written in TypeScript and run on Node',
          'Covered by unit tests and integration tests',
          'Deployed on Google Cloud Pubsub and Firebase Functions',
          'Integrated with cellular network via Sierra Wireless'
        ]
      },
      {
        header: <a href="https://github.com/brnkl">Embedded</a>,
        listItems: [
          <>
            Written in C with the{' '}
            <a href="https://legato.io">Legato Framework</a>
          </>,
          <>
            Custom circuit board based on ARM chip with{' '}
            <a href="https://www.yoctoproject.org/">Yocto Linux</a>
          </>,
          'Custom drivers for hardware peripherals (userspace and kernelspace)',
          'Integration with backend to implement custom business logic',
          'Successful deploys of over the air updates to customers',
          'Test circuit boards against a suite of hardware tests',
          <>
            Active member of <a href="https://forum.legato.io">Legato</a> and{' '}
            <a href="https://forum.mangoh.io">mangOH</a> communities
          </>
        ],
        images: [{ imgUrl: brnklProduct, caption: 'BRNKL embedded device' }]
      }
    ],
    desc: `Barnacle Systems is a self bootstrapped company working on boat
        monitoring and security. I worked remotely as the sole implementer of
        the the BRNKL app, backend, embedded firmware, and production automation
        software (with thanks to many open source authors).`,
    url: 'https://brnkl.io'
  },
  {
    name: 'Software Developer, Contract',
    brief: 'BRNKL by Barnacle Systems',
    date: 'Jul 2017 - Sept 2017',
    desc: `One of my co-workers from Forest Technology Systems left to found their
        own company and approached me to help with the initial version of the
        app and backend.`,
    projectDetails: [
      {
        listItems: [
          'Transform mockups and prototype of app into initial commercial release',
          'Implement initial backend based on prototype implementation',
          `Design infrastructure such that it is self managed (i.e "stateless" or "serverless")`,
          'Design and implement local test environment for backend'
        ]
      }
    ],
    url: 'https://brnkl.io'
  },
  {
    name: 'Software Developer, Co-op',
    brief: 'Forest Technology Systems',
    date: 'Sept 2016 - April 2017',
    projectDetails: [
      {
        listItems: [
          'Implement components of embedded camera product aimed at the fire weather market (FTS RAOS)',
          'Automate builds and installs',
          'Integrate with user facing software as a service product'
        ],
        images: [{ imgUrl: raos, caption: 'FTS RAOS camera system' }]
      }
    ],
    desc: `During my time at Forest Technology Systems, I worked with a small
          cross-functional team of engineers, product managers,
          and sales staff to transform a prototype camera stsystem into a production ready product.`,
    url: 'https://ftsinc.com/'
  }
]

export default () => (
  <Layout>
    {workHistory.map(work => (
      <Project {...work} key={work.name} />
    ))}
  </Layout>
)