16 Reasons to Hire Me for Your Next Programming Job
Looking for an experienced programmer for your next programming project? Need help developing the next great app or website? LOOK NO FURTHER!
1) Impressive technical skills
As a computer technician and project manager, I have had the experience of troubleshooting and configuring hardware as well as software. I do network design and planning, telephone wiring, multimedia production, and more. All of these experiences helped me build an impressive set of technical skills.
2) Willingness to learn
I love to do research; it’s how I learned to program, to begin with. I read through the manual for the computer in the Science Lab at school, then I read every book about programming in the school library, then every programming book in the City and State libraries, then I joined a computer book club, and purchased subscriptions to programmer magazines. I really had no other choice – computers were not something anybody had a lot of experience with, and it was pretty much only taught in colleges. My freshman year at high school was the first year the school even had a computer lab for students (Apple II). By the time I was a sophomore, I had already saved up and purchased my own personal computer and been programming for 2 years and working part time for myself as a computer consultant.
I am always interested in learning new technologies, though I have enough experience not to join the cause of every fad that comes along. Nothing is worse than dedicating time and energy to learning a new technology, language, or technique, only to have support for it drop at the last moment. I try to spot trends by reading industry periodicals, websites, browsing bookstores, and forums. Whenever I spot something I think would be valuable to learn I watch training videos, read articles, build prototypes, and try to learn as much about it as I can by making up my own little projects.
3) Debugging skills
I’ve been programming for most of my life. Thanks to my experiences programming over the years, along with my development methodology, I produce very low-error code. I hear other coders lamenting about how hard bugs are to find and how from their perspective ALL code is bugged. This has not been my experience. I have never really felt frustrated by bug hunting. I am only human, so I make mistakes, but finding them and correcting them are not a hassle at all if you have developed programming and troubleshooting skills over time. I use a logical approach to troubleshooting anything; a skill I learned in high school from troubleshooting electronics circuits when I worked as a TV repair technician. I have modified the procedures to apply to programming, but the concept is the same: isolate the issue and fix it. I do test-driven development, so if there are any errors, they are few and easily corrected. I do not view debugging as a dreaded task; I see it as something usually like a lightweight challenge.
4) Work environment match
I am easy-going and flexible, but also professional. I have worked in a variety of environments from corporate cubicles at TRW Space & Defense to casual open environments of small start-ups, to having my own office at CyberTech. My ideal environment would be a casual or business casual environment, with small diversions to break the monotony of coding. It’s helpful to take a break and give your brain a rest by playing with a toy on your desk, or taking a little walk, or even coloring in a coloring book. In the book, The Pragmatic Programmer, the author describes the value of taking short periods of “downtime” to allow your brain time to process ideas and come up with plans. I like to listen to music at my desk at a muted level or on headphones. Like most folks, I don’t like be constantly disturbed when I am focusing or in "the zone”. My easy-going nature helps me deal with potentially frustrating situations.
5) Problem-solving skills
When it comes to programming I always find a way to accomplish the task. With a clearly defined set of goals, I plan the path to get there from here. I use flow charts and other forms of documentation to create a clear design; highlighting problems and opportunities I may have along the way. I never think anything is impossible- it’s just that the path is obscured temporarily. Other ways to attack a problem or task might not be obvious at first. I am patient enough and creative enough to think outside the box instead of rushing and having to re-do work.
6) Passion for the work
What can I say? I LOVE PROGRAMMING. Many programmers just do programming as a 9 to 5 job to get the bills paid, but I truly am a computer nerd. My license plate says “NERD*UP” and my cell number is 505-490-NERD. In my spare time, I volunteer as a webmaster for a worldwide non-profit historical preservation and education society. I program databases for them, manage their email discussion lists, and recently overhauled their aging website with my own design. You can check it out at www.outlands.org. I also do work for other non-profits, for instance, I have volunteered as a Scoring Judge for Partner in Education grant applicants. I have also sat on many technology advisory committees. In addition, I also enjoy teaching programming to newcomers to the field. I often help them by optimizing their code and helping them with bugs. I host multiplayer games on my home server through player matching services. I am the author of a Steam Guide to MyRPG Master and wrote a book of over 200 pages for the Realm Crafter MMORPG development environment (Realm Crafter User’s Guide), and I maintain my own YouTube channel where I post instructional videos I produce.
7) Grace under fire
Some people freak out and melt down when they are up against a tight deadline. Freezing up or bailing out doesn’t help move the project forward at all and is counter-productive. When the shit hits the fan, cool heads prevail. Under those circumstances, I would work around the clock to get the project as close to possible to the deadline. Sometimes stuff happens that is out of your control and the best you can do is make the best of the situation. Negotiate a deadline extension, add more programmers, add programmers that are more experienced, re-prioritize delivery requirements, do whatever it takes to come to some sort of agreeable position from a disagreeable situation.
8) People skills
Since I take software through the entire development process, I am able to speak to and relate to everybody involved, from the end-user to other programmers, management, and stakeholders. I use my experience as a college professor to talk to people at a level they will understand, simplifying complex ideas if needed for the nonprofessional, or describing esoteric concepts to my peers. I get along with everybody and prefer to work things out before they become problems. I received the Gold Star Award from the Better Business Bureau of the Southwest, and currently maintain an A+ rating, the highest rating available to non-BBB members:
10) Business perspective
I’m always on the lookout for ways a business can improve its processes. I often see businesses from both the consumer and provider sides. I see ways customer service can be improved and ways for businesses to improve other processes to maximize efficiency and profits. I sometimes even come up with new profit stream possibilities. I identify opportunities to make positive changes in workflows and other business processes. For instance, when traveling to a conference in the Rocky Mountains for a non-profit I volunteer for, I encountered some very bad weather and dangerous road conditions. It occurred to me that the non-profit could use a regional weather and road conditions web page so that conference-goers around the region could have easy access to real-time weather reports and road conditions, so I created one. Another non-profit I worked for needed a way of collecting data in a timely manner about some on-line forms reporting. I integrated the reporting into the admin back-end, bringing the reporting in-house and saving thousands of dollars on reporting services.
11) Ability to plan
Before starting a project, I always plan my method of approach. I learn as much as possible about the intended deliverable, and then I begin the analysis and design process. I generate flow charts, data flow diagrams, and other systems analysis tools to help chart a path to the product deliverable. I then create various prototypes to test my ideas. Once I have worked out any issues and provided a proof-of-design, I carry forward from there and produce the finished product. In my experience, more time spent up front on planning and paper design, the less time is spent coding and troubleshooting.
12) Ability to handle adversity
Nobody is perfect, and even though my error rate is incredibly small, sometimes things don’t work out as planned. Unexpected bugs can pop-up, or maybe a better design reveals itself during development. Either way, it’s important to be able to tell when to spend time trying to fix bugs and when it’s time to scrap the current approach, reevaluate, and redesign. Bugs are not difficult to find and repair, and if your code is well planned and well designed, bugs are rare and easy to deal with. When you fail it’s not the end of the world, it’s a learning opportunity.
13) Teamwork mentality
I love to work on teams. I even love to go to meetings. I find it very rewarding to be part of a group where everybody pitches in with their talents and pulls off a big project. I have worked as both a team leader and a team member. As the Audio Engineer for “Zozobra Live!”, I was part of a production team of about 15 media professionals that worked together to televise the local Founder’s Day celebration live. As the Event Coordinator for the Medieval Village at the Santa Fe Renaissance Fair 2016, I managed a team of 20 volunteer historical preservation enthusiasts to put on the most successful Medieval Village in the Event’s history. I normally work on my own and direct my own activities, but have no problem working on teams.
14) Willingness to research
I love to learn about new things and I’m glad I learned library skills at a young age. I’ve spent so much time in libraries researching whatever piqued my interests (mostly programming, electronics, robotics, video, and photography). After the Internet came along, I was in Research Heaven! I’m a query expert and can find just what I’m looking for. Now I pull out my smartphone and look up topics that come up in conversations, or anytime I want to learn more about any topic of interest. When developing apps for 3rd party businesses, I research the business and learn as much about it as possible, with respect to the project. I once developed a prototype multimedia distance-training app for a Children Youth & Families agency that required learning a lot about some of the things field workers had to deal with in rural areas. I love research; I thrive on it.
15) Respect for deadlines
Almost every project has a deadline when stakeholders expect to have deliverables. When estimating projects, I always try to be generous with the amount of time it will take to complete. It is better to overestimate than underestimate. In my experience there will always be something that will eat into any time buffers you set up, so don’t sell yourself short on time estimates. If all else fails, and the deadline is looming, then it’s “all hands on deck!” and even all-nighters are sometimes justified. Sometimes deadlines are renegotiated if the stakeholders understand that extraordinary circumstances have thrown the scheduled delivery off.
An effective programmer must think outside the box and look at a problem from a variety of angles. My work as a Creative Consultant and Multimedia Producer has given me insight into ways to have a creative eye for things. Complex projects or programs are an opportunity to exercise my creative talents. Maybe a game I play has given me the idea for a new helper app, or maybe a frustrating customer experience at a store gives me an idea for an app that could eliminate that issue, I am constantly looking for ways to improve things and creative applications for the technology we use every day. I keep a notebook that I jot down ideas I have all day long, then I occasionally go back and sort them according to usefulness and practicality. Winning ideas get developed into apps for personal or commercial use. I love to work in focus groups, where people can brainstorm and bounce ideas off one another in a creative environment.