Chris Dielschnieder
SOFTWARE DEVELOPER
TOP LANGUAGES AND TECH
| Tech | Years |
|---|---|
| Javascript/ES6 | 5+ |
| React | 5 |
| Typescript | 2 |
| Python/Flask | 5+ |
| C/C++ | 5+ |
| SQL/Postgres | 5 |
| Elixir/Phoenix | 1 |
| Rails/Ruby | 2 |
TOP SKILLS
- Creative Problem Solving
- Full-Stack Development
- Web Application Development
- Object Oriented Design
- Public Speaking/Writing
- Ability to Work Unsupervised
- Networks and Protocols
- Open Source Contribution
WORK EXPERIENCE
Software & Hardware Development Intern
Lytehorse Labs | May 2022 - Aug 2022 | Regina, SK
The company's flagship product was an electric ATV and so they wanted a dynamometer for testing it. They had some prototyped hardware, so my job was to get develop custom software to get it running.
This was a dream project for me - working with software, hardware and electrical elements. Getting to be work with so many pieces of technology was an excellent experience.
Since I was the only developer on the project, a government funded intern, I had had near final-cut control:
- How to structure the code
- How to setup the GUI for user interaction
- How to integrate safety features
- And more....
The machine's construction was a solid metal frame inset with four 12 inch rollers that the vehicle sat on top of. These rollers were what ran the machine and what made this a dyno.
Each roller was connected to an electric motor for drive, brake, and torque/HP testing. The motors connected to Kelly motor controllers, which then connected to an Arduino. This was our way to commuicate.
On the user's end, a python program used our custom UART-based protocol to send and receive communications over serial. We used a Teensy microntroller since it has eight serial ports, and recieved asynchronous communication from both directions.
- Primary task #1 was to develop native software using Python.
- Using serial protocol, Python signalled Arduino. Arduino then signalled electric motor controllers on the machine.
- Tools used included TKinter for GUI; multi-threading and TCP socket APIs for asynchronous communication.
- Primary task #2 was to develop logic for Arduino microcontroller in C language. This handled communication between user and machine using serial.
- Two-way serial communication meant Arduino accepted input from both Python and motor controller systems simultaneously.
- Arduino signal directions: received serial input from Python, received serial input from motor controller, sent out appropriate serial output responses.
Front End Development Intern
54e Dev Studios | Jan 2022 - May 2022 | Regina, SK
- Overall job was to develop new client-side features for company's internal content management system using React and Typescript.
- Primary task was to fulfill supervisor assigned tickets, and to assign new tickets to myself when required. Tasks included:
- Adding/removing elements such as buttons, checkboxes, radios, etc., along with required operating logic.
- Adding new pages to CMS for entirely new functionality, i.e. adding an '/items' page.
- Secondary task was to make the CMS mobile-friendly.
- After noticing that many CMS pages were not responsive, I overhauled as many pages as possible, making them functionally responsive on mobile.
- Many staff were using the CMS under non-responsive conditions, so this improvement benefited staff positively.
- Additional tasks included monitoring build pipeline for errors, and assuring smooth merge of all my pull requests.
Full-Stack Development Intern
Raven Industries | May 2021 - Aug 2021 | Regina, SK
- Overall jobs were to develop new client-side features on ground control driving simulator for autonomous vehicle OMNiDRIVE, as well as to increase back-end systems test coverage.
- Primary task #1 was to create client-side components using React:
- Creating components within the simulator to expand simulator functionality.
- Main React task was to add a new expandable panel UI, along with the connecting logic to make it operational.
- Other smalls task included adding small UI items such as buttons.
- Primary task #2 was to write unit tests for back-end vehicle systems using Python:
- Unit testing for internal systems meant deep-diving into code used for driving an autonomous vehicle.
- I was able to increase the test coverage by 10%.
Front-End Development Intern
Sasktel | July 2020 - Dec 2020 | Regina, SK
- Overall job was to develop and test new client-side features for company website sasktel.ca across multiple environments i.e. Testing, Pre-Prod, Prod.
- Primary task was to fulfil supervisor assigned tickets. Assigned items included:
- Adding small UI features to pages, i.e buttons, using Angular and vanilla JS.
- Test that features worked across multiple environments, i.e. Test, Pre-prod, Prod.
- Secondary tasks included investigating and fixing bugs reported by QA testers.
Front-End Development
Virtual High School | June 2017 - Sept 2018 | BayField, ON
- Overall job was to develop new client-side features for company's internal content management system using Vue and Javascript.
- Primary task was to develop interactive educational tools, such as matching drag-and-drop games, which were used in school's courses.
- These were used to supplement the regular course materials, and were dropped into pages by teachers during course creation.
- Secondary task #1 was to write test coverage for all client-side logic.
- Setup test suite using Mocha, Karma, and Chai.
- Improved test coverage from zero to cover 100% of all client-side logic.
- Secondary task #2 was to act as maintainer for project documentation. Docs were generated using Jsdoc.
EDUCATION
-
Bachelor of Science: Computer Science
2019-2023
University of Regina
-
Web Dev Immersive: 10 week bootcamp
2016
General Assembly Toronto
-
Master of Fine Arts: English
2012-2014
City College of New York
-
Bachelor of Arts: English
summa cum lauda2009-2012
City College of New York