Skip to content
View mkenney's full-sized avatar

Organizations

@bdlm

Block or report mkenney

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mkenney/README.md

whoami

Well-rounded, goal oriented, professional software developer with extensive experience planning, developing and implementing a wide variety of solutions for both large corporations and small startups. In addition to being a highly skilled software engineer, specialties include designing both technical and non-technical solutions to meet all types of business needs, crafting and implementing development processes and leading teams to deliver high-quality software. Interested in a software engineering position that makes use of skills developed over years of solving the complex problems that businesses face.

projects

A few of the things that keep me busy:

LinkedIn GitHub

My resume and LinkedIn.

Full stack professional software developer with extensive experience in all aspects of the software development life cycle.

  • Software and systems architecture design and implementation with a wide range of technologies.
  • Microservices architecture design and implementation.
  • Authentication services design and implementation.
  • Docker, Kubernetes, AWS, Jenkins, Terraform, Helm, etc.
  • Systems integration planning and execution.
  • Architecture and engineering best practices advocate.

...more


MIT Release GoDoc Github issues Github pull requests

Simple, predictable type conversion for Go.

bdlm/cast provides a generic function to easily convert both simple types (number to a string, interface ito a bool, etc.) and complex types (slice to map and vice versa, any to func() any, any to chan any, etc.). Cast does this intelligently when an obvious conversion is possible and logically when a conversion requires a predictable measureable process, such as casting a map to a slice or a bool to a channel. It doesn’t make any assumptions about how types should be converted but follows simple predictable rules.

  • intVal := cast.To[int]("8") // 8 (int)
  • fltVal := cast.To[float64]("8.31") // 8.31 (float64)
  • strVal := cast.To[string](8.31) // "8.31" (string)
  • intVal, err := cast.ToE[int]("H!") // 0 (int), unable to cast "H!" of type string to int
...more

MIT Release GoDoc Build status Coverage status

Structured logging for Go.

bdlm/log is a structured logger for Go and is fully API compatible with the standard libaray log package. This package adds:

  • support for sanitizing strings from log output to aid in preventing leaking sensitive data.
  • additional default fields host and caller.
  • multiple log levels including verbose output of the full backtrace of logger calls.
  • gRPC request interceptors.
...more

MIT Release GoDoc Build status Coverage status

Simple, concise error handling and annotation for Go.

bdlm/errors provides simple, concise, useful error handling and annotation. This package aims to implement the Error Inspection and Error Values Go2 draft designs with full error trace support. Implements several useful interfaces including Wrapper, Caller, and Error.
...more

A golang library for interacting with the Chrome DevTools Protocol.

go-chrome aims to be a complete Chrome DevTools Protocol implementation. The primary use-case behind this project is interacting with headless Google Chrome in a container environment, but it should be appropriate for developing server side and desktop applications for any browser that supports the devtools protocol.

MIT License Alpha Build status Coverage status

A simple, dynamic HTTP ingress service for Kubernetes development environments.

k8s-proxy provides a simple HTTP proxy service for easily working with multiple web services in a Kubernetes development environment. A Docker image is available.

MIT License Mature Build status Open Issues

npm, yarn, node, npx, bower, grunt, gulp, generate-md - build and dev tools.

docker-npm provides a set of shell scripts that manage Node.js docker images. The images contain the latest stable bower, generate-md, grunt, gulp, node, npm, npx, and yarn, binaries for node.

MIT License Experimental

My terminal config files.

To keep me sane.

free time 😷

I've recently started learning about electronic engineering and building an 8-bit CPU and computer using simple logic gates following a design by Ben Eater. It's a ton of fun and I'm learning a lot!

Pinned Loading

  1. git-status git-status Public

    A git status line for shell prompts or whatever

    Shell 1 1

  2. git-import git-import Public

    Import files from one git repository into another, maintaining history

    Shell 4 1

  3. bdlm/didyoumean bdlm/didyoumean Public

    yes, that's what I meant 😑

    Shell 1

  4. bdlm/cast bdlm/cast Public

    Simple typecasting for Go

    Go 4 1

  5. Projects Projects Public

    Forked from karan/Projects

    📝 A list of practical projects that anyone can solve in any programming language.

    Common Lisp

  6. go go Public

    Random things in go...

    Go