I'm a recent graduate from Iowa State University majoring in Software Engineering. I am looking forward to starting a career with Buildertrend in this year.
I enjoy creating web applications using technologies like Node.js, AngularJS, and Groovy/Grails. I have a focus on full-stack web development. I also have proficiency with Knockout and C#.
I have a passion for travelling. Some places I have been:
I like to think of myself as a history buff. Topics that interest me range from Ancient Rome to the French Revolution. One of my favorite past-times is listening to history podcasts. My favorites are Hardcore History by Dan Carlin and Revolutions by Mike Duncan. Check them out!
One thing I like to do with my friends is play videogames on PC or Xbox One. I especially enjoy strategy games. My favorite games right now are Battlefield 1 and Europa Universalis 4.
I am into indie and alternative music. My favorite bands are Bastille, St. Lucia, and The Wombats. I also collect vinyl records.
Some activities I like to do are fencing and badminton. I also enjoy watching college football and (when I can) Premier League Soocer. Go Swansea City!
Used embedded programming in C to control an iRobot fitted with several onboard sensors. The iRobot rover could be piloted from afar with a GUI to traverse an obstacle course simulating an environment on Mars. I worked with a team of 3 other computer engineering and electrical engineering students to complete this project. My role in the project was to write code to control the IR and Ping sensors as well as interrupt their output to make decisions about headings. This project taught me a lot about real-time embedded programming and interfacing with several forms of hardware sensors, as well as improving my proficiency in the C language.
Created a responsive web application to aid in planning trips and vacations based upon your schedule and budget. The app helps you pick from several popular destinations, allows you to schedule airfare and accommodations, suggests restaurants and attractions, and populates a custom map with your itinerary. I worked with a team of 3 other developers to build this web app. Some technologies this project used are Groovy/Grails, AngularJS, MySQL, Apache Tomcat, and several Google APIs. As project leader, I worked on just about every piece of the application, but I heavily focused on the trip building logic on the server and front-end JavaScript. I was also the main software architect. This project served as a good introduction to large software design projects and team management.
As part of a course in front-end web technologies, I worked with another student to create an interactive portfolio analysis of the popular data visualization library d3.js. The purpose of the project was to provide an introductory look at a complex library and teach many of the basic skills need to use it. The portfolio included several interactive d3 charts using real-life data. The project also includes snippets of source code used to create those charts. My contribution to the project were the code for ring-charts, interactive bar charts, and dynamic data source loading. I learned a lot about advanced front-end JavaScript development while working on this project. You can find the source code for this project on Github.
I am worked with a group of other seniors to build a web-application for a research project with Dr. Tom Daniels. We created a collaborative tool for creating and editing attack graphs to aid in evaluating cybersecurity.
I worked as a Code Academy Intern during the summer of 2017 at Buildertrend in Omaha, NE. I worked on internal projects for increasing the productivity of full-time employees. I have recently accepted a a position as a full-time application developer to start in January 2018.
I worked as a development intern for two summers at Zirous in West Des Moines, IA. My duties included writing and testing code, participating in team meetings, designing web applications, and giving presentations. I had the opportunity to work with a team of four other interns as well as several full-time employees.
For my first summer at Zirous, the intern team was tasked with creating a minimum viable product for a social productivity web application named Knackle. The goal of the application was for several people to colloborate to plan and complete tasks to accomplish large projects like planning a wedding or training for a triathalon. You can read more about it here in a blog post written for the Zirous blog.
During my second internship at Zirous, the company entered a new market: big data analytics. This meant the hiring of a new team of data analysists. The intern team worked closely with this new department to create a web application they could use to catalog, sort, and query a large number of datasets. This project revolved around Hadoop, a big data platform from Hortonworks.
While working on these projects, I learned about several technologies including: Groovy/Grails, AngularJS, Bootstrap, NodeJS, and MySQL. This was also my first exposure to creating web applications. In addition to new technical skills, I learned a lot about what it means to work in the "real world." Another key concept I learned about was the product lifecycle, which is hard to cover in enough detail through academic coursework.
During my years at Iowa State University, I have grown intellectually, professionally, and personally. When I enrolled, I had never written a line of code, worked a “real” job, or lived on my own. Now, as a senior at ISU, I reflect on just how far I have come those short years.
Engineering courses at ISU make problem-solving a key focus of their curriculum, and that has had a positive impact on me. Many of the early classes I took, like Physics and Chemistry, will not necessarily be directly applicable in my future career. But the skills of formulating and solving problems taught in those courses at the beginning of my college education will always be applicable. Several upper-level courses took those problem-solving skills and added an additional layer of difficulty: design. The ability to design software processes and systems to be functional and efficient is probably the most important skill for a software engineer, and design-focused coursework like my senior design project gave me an opportunity to develop that skill.
Coursework at Iowa State has also prepared me for the workplace after graduation. I worked on countless group projects, learning how to effectively run meetings and interact with a diverse group of people. A class on software team management was one of the highlights of my time at ISU and the lessons learned there will be some of the most helpful in my career. Nearly every year, I was enrolled in a seminar class that discussed ethics. We learned used contemporary examples of professional misconduct to learn about recognizing ethical dilemmas and discussed our professional and ethical responsibilities as engineers. As the world continues to become more reliant on computers and electronics, dealing with ethics issues will become more important for software engineers.
Iowa State has also helped me develop another skill key to software engineering: becoming a lifelong learner. This involved teaching me how to seek out resources to aid in problem-solving. The information provided in class is not always adequate to complete the work, so I had to rely upon outside resources. During my freshman year, I was taught about how to properly utilize the campus library to do research and find information to be successful in school. Another key resource for software developers is the documentation for the technologies we use. And of course, like all modern software developers, I owe a lot to the community of the website Stack Overflow for help with troubleshooting obscure problems and writing better code.
I was extremely lucky to have several great experiences while I was at Iowa State that have had a positive impact in my life. Clubs and extracurricular activities such as Freshman Leaders in Engineering (FLiE) and Tau Beta Pi Honor Society helped me grow as both an engineer and as a leader. During the spring semester of my sophomore year I was fortunate enough to participate in a study abroad exchange program with Swansea University. This experience forced me to step outside my comfort zone and immerse myself in foreign culture. In today’s connected world, being able to operate at an international level is important for companies, and thus for their employees. Finally, the engineering career fairs at ISU helped me to connect with potential employers and find three internships. These internships gave me valuable work experience and a chance to work on real projects.
Looking back on my time, I have few regrets. The biggest for me is that I didn’t take the opportunity to participate in more things outside of class. I wish I had been able to go to more clubs and complete my own personal software projects. To rectify this, I have been working on a few pet projects during my senior year. Those projects will serve as a key part of being a lifelong learner. But overall, I feel like my time at ISU has been extremely positive and helped me grow so much. When I have graduated, I will be sad to leave, but I can say with confidence that I will be able to look back on my college experience with pride.
As my time at Iowa State University ends, I reflect on how my choice of electives has influenced me as a software engineer, as well as look forward to my goals for the future. During my four years in college I have taken several elective courses, in Software Engineering and other fields. The SE electives obviously helped to increase my technical skills, but they have also helped me grow in other “softer” skills. One example is SE 416 which taught me strategies for analyzing problems, representing them with graphs, and reflecting on what makes for a “good” solution. These skills are all fundamental to any engineering domain by formalizing a process for problem-solving.
Two of my general electives were in the field of Psychology, specifically focusing on the concepts of cognitive studies and visual perception. My coursework on cognitive psychology has taught me much about how people make decisions. This was directly helpful in a project where I created an artificial intelligence model of a player in the board game Clue. Understanding how people make decisions, made it so much easier to simulate that in-game. Another aspect of cognitive psychology is research into learning, which is directly relevant in cutting-edge technologies like machine learning and neural nets. Knowledge of visual perception is indispensable when designing web pages and UI elements, as it helps you create a positive user experience that is intuitive and efficient.
A unique general elective for me was a course in modern British history and culture that I took while studying abroad in Swansea, Wales. The combination of knowledge and experience about a foreign country has helped me to become more globally-minded. This perspective is valuable as software is a global industry, and the United Kingdom is an important part of it. Software also needs to be designed for a global audience. During my work on Pathfinder, a travel web application, I used this perspective to design software that could be used (and was indeed meant to be used) outside of the United States, considering concepts like currency exchanges and travel visas. In fact, the inspiration for this project came from an experience I had while studying abroad in Wales trying to plan a weekend trip to Ireland. The Pathfinder application had to be designed while considering different social and economic perspectives as well. This included making it attractive to users from a variety of socio-economic backgrounds, from broke college students to wealthy businessmen.
My choice of electives influenced my skills as a software engineer, but also my interests. They helped me discover my love of web development, an area I would like to focus on in my future career. My short-term goal after graduation is to get a job as a web developer for a company in either Omaha or Des Moines. Working close to Ames is important for me as I can be close to family as well as my girlfriend who is still finishing her degree at Iowa State. In the long-term I hope to become a software architect for a company focusing on web development and eventually move into project management. I believe whole-heartedly that my education (particularly my electives) has prepared me to achieve my career goals.
Feel free to send me a message. I will try to get back to you as soon as I can.