About Me

Hi, I’m Matt Callahan and I am a software developer in Phoenix, Arizona. Computers have been my hobby since my dad brought home our first family computer 30 years ago - a 286 PC running MS-DOS. I found QBasic and began teaching myself how to program - without Google or StackOverflow! After receiving a TI-83 graphing calculator for algebra class in 6th grade, I quickly began making games and homework cheat programs with TI-BASIC to share with friends. My interest in programming extended through college, where my Geographic Information Systems major introduced me to Java and Flash/ActionScript.

If I'm not at my keyboard, you'll find me enjoying the Arizona outdoors - exploring the scenic back roads, bicycling, fishing, camping, swimming, and skiing (yes, there's skiing in Arizona).

Software Development

My main area of interest in programming is desktop and web development using the Microsoft .NET framework. C# is my tool of choice when I need to develop a custom solution. It is a powerful language with a robust base class library and awesome features like LINQ, garbage collection, and asynchronous programming. But sometimes I just don't need the overhead of the massive .NET framework, and Python is my second tool of choice. Python is perfect for automating tedious or repetitive tasks, or processing large batches of data. Python is also what I strongly recommend as a first lanaguge for programming beginners.

I am currently a Software Engineer at Carvana - an online used car dealer based in Tempe, AZ that is changing the way people buy a car. I work with a talented team of developers, and I primarily focus on back end web development, supporting the APIs and applications that help power carvana.com.

Radio

In addition to computers and programming, my other nerdy hobby is radio. I am a licensed GMRS radio opearator (call sign WRAA720) and a licensed amateur radio operator (call sign K7MFC). I am also a board member at Arizona GMRS Repeater Club. Check out my radio homepage here.

Projects

Here are some sample projects that demonstrate the types of software development I enjoy. View all my public code repositories here.

mfcallahan.com   This website is a light weight ASP.NET MVC application, and is deployed as Microsoft Azure App Service.

mfcallahan-dev.com API   This is a demo HTTP service created with ASP.NET Web API 2. Click here for the API documentation. The source code can be viewed here.

Example HTTP GET request: mfcallahan-dev.com/api/Hello

$.get("http://mfcallahan-dev.com/api/Hello", function (data) {
    console.log(data);
});

// API response
{
    "Status": "200",
    "Message": "Hello. The API at mfcallahan-dev.com is responding.",
    "Methods": [
        "/api/About",
        "/api/Hello",
        "/api/Geocode?address={}&city={}&stateProv={}&postalCode={}&country={}",
        "/api/GetDelayedResponse?waitSeconds={}",
        "/api/IpInfo?ip={}",
        "/api/RandomString?length={}&useNums={}"
    ]
}

MB Utils   A MapBasic module and .NET library that extends MapInfo MBX programming functionality by exposing .NET and Win32 API calls as easy to use MapBasic functions and subs. This project was the first library I ever wrote and was a great learning experience in how to document, release, and support an open source software project, albeit on a small scale. I'm sharing this here to show how my career and code quality has progressed.

Miscellaneous Code   This repository houses all my miscellaneous code: one-off scripts, code snippets I refer back to once in a while, and anything else useful enough to hang on to for a while.