Hello! My name is David Koser
I am an emerging software engineer and web developer focusing on Typescript applied to Node.js and React.js. Currently, I am also actively improving my mastery of AWS and associated cloud-based technologies. My resume can be viewed and downloaded within the Resume section. Screenshots, descriptions and links to my previous projects and their associated GitHub repositories can also be found within the Projects section. About Me
I am a former software engineer at Olive (recently resigned), a graduate of DevMountain's full-stack web-development coding boot camp, and hold a Master of Professional Studies in Horticulture from the University of Minnesota. Prior to this, I received a Bachelor of Arts in Biology from Saint Olaf College. I am open to opportunities in: software engineering, web development, ecological/landscape design, ecological restoration, greenhouse management, extension education and plant health. Beyond this, I am strongly interested in promoting environmental sustainability and fighting climate change, and would welcome any opportunities to do so professionally. I possess strong attention to detail and have a natural talent for rapport building and facilitating cross-functional collaboration in support of project deliverables, allowing me to excel in self-driven and team-based work environments. I am open to new opportunities and am highly adaptable and teachable, possessing the ability to quickly learn new: technologies, processes, and company standards.
My DevMountain coursework covered full-stack web development within the PERN stack (PostgreSQL, Express.js, React.js, Node.js). The curriculum also involved completion of two large projects, including a full-stack personal project website, as well as a full-stack group project website. The latter was completed by a group of three students, including myself, within a remote environment leveraging: Git, GitHub and Trello for project management.
When coupling my masters coursework with my previous work experience and participation in a greenhouse production and plant-health-oriented horticultural internship at Bachman's Inc. in 2019, I also offer a foundational understanding of many aspects of horticulture within commercial settings, including: plant pathology, greenhouse management, organic fruit production and viticulture, organic vegetable production, plant propagation, integrated and biological pest control, and quality control. I have also completed an Ecological Restoration Certificate from University of Minnesota Extension, and have gained valuable ecological restoration field experience during my time as an assistant project manager at Prairie Restorations Inc.
Ideally, I would like to work in a role which affords me the opportunity to combine my biology and horticultural background with my programming skills and technical abilities.
Thank you for taking an interest in my portfolio and I look forward to hearing from you.Portfolio
Typescript | React | React-Router | Redux | Node.js | Express.js | Node-Fetch | AWS Amplify | AWS Cognito | AWS Route 53 | AWS AppSync | AWS IAM | AWS Parameter Store | AWS DynamoDB | AWS Lambda | AWS API Gateway | D3.js | CSS | Sass/SCSS | RegEx | git | GitHub | Postman | Figma | Heroku | HTML5 | StripeGitHub Repository LinkThe purpose of this project was to bring my BackyardRestoration.net app up-to-date with recent changes to React-Router and Redux best-practices, and to provide myself an entrypoint into the world of AWS serverless architecture.The frontend is built on React.js utilizing React-Redux for state management and React-Router for navigation/routing. Prior to coding, the UI was wire-framed using Figma and all styling was completed using Sass/SCSS using mobile-first design principles. Backend infrastructure was re-built using serverless architecture leveraging AWS Amplify and associated technologies. Upon registration, the user’s address is converted into coordinates using Google’s Geocoding API. This is then used to calculate four additional coordinates representing progressively larger ellipsoidal WGS84 bounding boxes until a NOAA weather station is identified (via NOAA’s V2 API) that is capable of delivering the required 10 years of minimum and maximum daily temperature data necessary to accurately calculate local hardiness zone. This is subsequently used to calibrate all weed management actions to the user’s growing season within the D3.js weed management timeline. All API requests are conducted using node-fetch or the AWS Amplify API, and user authentication and password reset functionality is provided via AWS Cognito. The native plant search API was created leveraging GraphQL via AWS AppSync, enabling users to select native plants from associated Dynamo DB tables that are most appropriate for their site conditions. The optional donation page uses the Stripe API to securely accept credit card payments. Growing parameter calculation and stripe functionalities are encapsulated within a serverless Express.js backend via AWS Lambda. All non-compiled code was written in Typescript.