Software Design Portfolio

Computer programming is about much more than just building websites and mobile apps. It’s about creating all sorts of computer software applications, from analyzing rocket motors and Space Shuttle flights, creating order entry and reporting systems, manufacturing software, and much more, including the applications shown on this page.

Primary Skills

To be clear, I believe my primary skills are:

  • Leading software development teams as a ScrumMaster and Product Owner
  • To that end I am a Certified ScrumMaster (CSM) and Certified Scrum Product Owner (CSPO)
  • Software requirements and design (i.e., Business Analyst and Product Owner)
  • Server-side programming
  • Cross-platform mobile app development with Flutter

Background

That being said, I think it’s also important that you know my complete software development background. Therefore, this page is separated into the following three sections:

  • My software analysis, requirements, and design portfolio
  • My software application portfolio
  • My website design portfolio

1) Software requirements, analysis, and design

Creating software is about much more than just sitting down and writing code. It’s about working with customers to deliver the system they want through a process of gathering system requirements and designing a complete software system to meet their needs. I’ve written thousands of pages of software design specifications.

Here are just a few images that demonstrate my experience in the field of software requirements, analysis, and design, formally known as Object-Oriented Analysis (OOA) and Object-Oriented Design (OOD):

A sample network diagram
A sample network diagram
from an application I designed

Network security diagram

A simple firewall diagram for one
of my clients

Application data objects
A list of objects and relationships
for a client application
Project acronyms
A list of acronyms used in one
of my projects
ALTTEXT
A list of actors
for a project
ALTTEXT
A list of use cases
for one actor
ALTTEXT
Another list of use cases
for one actor
ALTTEXT
A small sample
user story
ALTTEXT
A sample
UML Activity Diagram
ALTTEXT
A portion of a model for
a self-healing application
ALTTEXT
The physical architecture
for a project named SAM
ALTTEXT
The test architecture
for a project named SAM
Sample web form
A sample web form from an
application prototype
Prototype #2
Another web form prototype
for a client application
ALTTEXT
A simple address
lookup form prototype
ALTTEXT
A simple form to add
a new address
ALTTEXT
A form to edit
a barn door
ALTTEXT
Another barn door
edit dialog
ALTTEXT
Part 1 of a container
distribution form
ALTTEXT
Part 2 of a container
distribution form
ALTTEXT
A portion of a
UI palette
ALTTEXT
A plate view
for a gatefold
ALTTEXT
Card wizard
Part 1
ALTTEXT
Card wizard
Part 2
ALTTEXT
Card wizard
Part 3
ALTTEXT
Card wizard
Part 4
ALTTEXT
Card wizard
Part 5
ALTTEXT
Card wizard
Part 6
ALTTEXT
Envelope wizard
Part 1
ALTTEXT
Envelope wizard
Part 2
ALTTEXT
Envelope wizard
Part 3
ALTTEXT
Envelope wizard
Part 4
ALTTEXT
Part of a polywrap wizard
with text and annotations
ALTTEXT
More of the
polywrap wizard
ALTTEXT
A sample data entry form
with some complexity
ALTTEXT
An early prototype
for the Nagios web interface

These days I generally work with “agile” software development methods like user story mapping and writing user stories, but if necessary I can also work with Unified Modeling Language (UML) approaches to software documentation.

2) Software Application Portfolio

While I have worked with other people to design and develop websites, that’s not what I normally do. What I normally do is design and build software applications. These days that include web applications and mobile apps for iOS and Android, and the occasional desktop application. Here are a few examples of my work:

TypewriterFX plays typewriter sound effects as you type

TypewriterFX, a MacOS application that
plays typewriter sound effects as you type

A sample iPhone form

A sample iPhone form

Wikistar editor

Wikistar - An advanced
text editor

NetAssist

NetAssist - A network analyzing app

Part of a web interface written for Nagios

A web form, part of the web interface
I wrote for Nagios

Just Be, an Android mindfulness app

Just Be, an Android mindfulness app

ALTTEXT
Part of the FLiB
browser UI
ALTTEXT
Part of an early Twitter app
I created
ALTTEXT
A scratchpad, multi-tab
text editor
ALTTEXT
Part of my FPTracker
application
ALTTEXT
An early screen from my
Android football game
ALTTEXT
A later screen from
my Android football game
ALTTEXT
A URL list in my
URL-shortener web application
ALTTEXT
An early screen design for my
RadioPi project
ALTTEXT
The main screen from my
Cato CRUD Generator
ALTTEXT
Cato CRUD Generator with
generated source code

JEyes - The Java version of Xeyes

Java Eyes - The famous Xeyes application,
written in Java

Mac Automator apps and workflows

Mac Automator apps and workflows

Here’s an image from my Back To Now app:

As you can see, I’ve designed and developed much more than just websites — I’ve created all sort of custom software applications. For even more applications, see my free software applications list on my alvinalexander.com website.

3) My website design portfolio

Technically I’m a programmer, not a designer, but this is a collection of websites I’ve designed. I created each of these websites shown below for very different purposes, and very different audiences:

  • AlexanderKY.com — Support my (Alvin Alexander) previous computer programming business in Kentucky
  • AlaskaSquirrel.com — A children’s story about living in Talkeetna ... with a squirrel
  • devdaily.com — A very popular website for software developers and Linux geeks (receives millions of page views every year)
  • HowISoldMyBusiness.com — A personal diary about how I sold my last business
  • OneMansAlaska.com — A blog about my life in Alaska
  • Sleetmute.com — A Function Point Analysis software program

 


devdaily.com - programming tutorials

how i sold my business (diary)

one man’s alaska (living in alaska)

alaska squirrel (a children’s story)

alexander consulting

sleetmute.com - function point analysis software

code me! - a tag-based search engine
Mat-Su Valley Programming
matsuvp.com — the original
Valley Programming website,
when I lived in Alaska

While some of these websites are based on templates (see my Clean, minimalist Drupal themes and Clean, minimalist website designs articles on the devdaily website), I try to make each website unique and appropriate for the client and content.

4) Books

In addition to writing over 40 applications and several thousand blog posts on alvinalexander.com, I’ve also written over 3,000 pages of books.

ALTTEXT
Scala Cookbook
(1st and 2nd editions)
ALTTEXT
Functional Programming, Simplified
(Makes FP understandable)
ALTTEXT
Scala Book (1st and 2nd editions)
(For the official Scala website)
ALTTEXT
Kotlin Quick Reference
(Currently in progress)

Summary

I hope this small collection of diagrams helps demonstrate some of my software application analysis, design, and programming capabilities. To see even more about my most recent work, see the long list of apps I have written and the blog on this website.