My Résumé

Joe Cullin . Randolph, NJ . joe@joecullin.com

Download a PDF document or read a more-detailed history below.

Summary

Current status: happy where I am.

I've enjoyed roles ranging from senior developer to director of a large multi-office set of teams. I like to stay close to the hands-on action, either as an individual contributor or in a hybrid role with some management/leadership expectations. (Though I wouldn't rule out a higher-level management position if it were the perfect fit.)

  • I quickly gain a deep understanding of complex systems, no matter how large the tech debt or how sparse the docs.
  • I think fixing bugs and improving reliability is just as rewarding as building new systems.
  • I am good at translating and refining business needs into workable software solutions.
  • I consistently meet tough deadlines and challenging goals, pragmatically achieving project goals without sacrificing quality.
  • I like to push new tech, but I also realize the value of stable, proven solutions.
  • I believe organizations, people, & process deserve as much attention as technology.
  • I'm a huge fan of continuous improvement, for myself, my team, and the systems we use.
  • I support good leaders and work well with them, but I don't shy from leadership roles when needed.

Tech

Languages: JavaScript, HTML, CSS, Perl, PHP, TypeScript, Sass, Java, C, Bash.

Frameworks & Platforms: Node.js, React, Express, Apache, Apollo, jQuery, IIS, Nginx.

Operating Systems: Ubuntu, macOS, Windows servers, many other UNIX/linuxes.

Amazon AWS: EC2, S3, RDS, Cognito, EKS, CDK, Route53, DocumentDB, CloudFront, ALB, ELB, Lambda, SES, SNS, DynamoDB, ElastiCache, Elasticsearch, WAF, Secrets Manager.

Tools: Git, Gitlab, ELK stack, Kubernetes, Azure DevOps, Subversion, Gulp, Jenkins, Jira/Confluence, Redmine.

Databases: Elasticsearch, MySQL, PostgreSQL, SQL Server, Oracle, MongoDB, Redis.

Also: Logstash, Kibana, GraphQL, Docker, jsreport, Laravel, Slim, Nuxeo, HubSpot, WordPress, Perforce, Email (low-level content & delivery protocols), AJAX, APIs (MS Graph, Zendesk, Salesforce, Hubspot, Google, Slack, Okta, Duo, Iterable, etc.), Bootstrap, ImageMagick, VirtualBox, SOAP, OAuth, Swagger, Okta.

Work Experience

Feb 2020–Present
Software Engineering Director
SKOUT CYBERSECURITY / Barracuda - Remote

Software Engineering Director, (Feb 2022–present)

  • Led the continued growth of the software engineering team.
  • Continued integration with other Barracuda teams and platforms.
  • Expanded our team's responsibility for more apps & systems.

Software Engineering Manager, (Apr 2021–Jan 2022)

  • Led the software engineering team as it expanded from two to seven engineers.
  • Consolidated and simplified architecture and platform.
  • Served as scrummaster, running sprints for a 30+ person tech ops team.

Senior Software Engineer, (Feb 2020–Mar 2021)

  • Focused primarily on SKOUT's new partner/customer dashboard (React/node), plus some internal apps and data processing pipelines.
  • Developed several new dashboard screens & features. Highlight: a from-scratch custom report builder, with reports rendered in React, pdf download, and recurring scheduling.
  • Contributed dozens of visible function & ux improvements, often coupled with underlying security, quality, and maintainability improvements.
  • Process: introduced CI/CD (gitlab), automated unit testing (Jest), code reviews, stable & predictable deploy routines, bug triage, etc.
Mar 2018–Feb 2020
Senior Software Engineer
Thomas - New York, NY

My team builds & maintains the thomasnet.com website, a B2B resource for US industrial companies. Along with the main website, we build maintain dozens of backend tools for content production, reporting & analytics, ad serving, client portals, seo management, sales, and integrations with partner & legacy systems.

We're modernizing and simplifying the whole stack—in-place & without disruption—while also delivering steady improvements to usability, performance, SEO, and adding new features and functions. This includes gradually reshaping the architecture to make it more scalable and more maintainable:

  • ALB instead of ELB,
  • Node lambdas instead of PHP pages,
  • React instead of jQuery,
  • Re-shaping the data,
  • Consolidating other languages/platforms.
Because it's a long-term effort, we're also maintaining—sometimes even expanding—portions of the large PHP codebase as needed.

Sampling of accomplishments:

  • Helped hire and organize a new software engineering team to work on thomasnet.com and the supporting backend systems. Led a 3–4 person "pod" of developers. Responsible for estimating and refining stories, sprint planning, and balancing trade-offs to ensure delivery of sprint commitments.
  • Proposed, planned, and completed several complex in-place overhauls of site architecture, to support our rapid growth in registered users and in overall traffic. The result was greater scalability, reduced code & architecture complexity, and lower infrastructure costs. For example: replaced hundreds of on-page-load SQL queries with S3 data objects, generated by hourly/nightly processes.
  • Replaced multiple custom article & newsletter management systems with a single more powerful CMS. Configured Nuxeo (off-the-shelf product) as the foundation, and created a custom GraphQL data layer, a user-facing React app, and new publishing processes.
  • Replaced 3rd-party user data & single-sign-on product with a simpler and more scalable custom system. Included creation of a backward-compatible api and gradual migration of several sites & tools, with no downtime or impact on users.

Oct 2011–Mar 2018
Analyst
CMG.tech - Chester, NJ

The thomasnet.com site and many of its content systems were originally created and maintained by CMG.

  • In our flat org (which varied in size from 10–20 senior developers and analysts) I served a dual role of 50/50 project manager and senior developer, adjusting based on the needs of each project.
  • Served as direct point of contact for about 30–40 product owners, business analysts, developers, project managers, etc. at Thomas, with weekly meetings at their NY office.
  • Improved dev environments, introduced source code management, introduced issue tracking. Improved project management, security, efficiency, testing, quality, and communication of our dev team's work.
  • Thomas's size/age/complexity (both the organization and the technology) was daunting. I mastered a lot of arcane history, and then helped gradually simplify and streamline systems.

Nov 1997–Oct 2011
Software Developer; Manager; Director
Numara Software / UniPress Software - Woodbridge, NJ

Built the FootPrints service desk product.
Now owned by BMC Software: www.footprintsservicedesk.com.

Product Development Director, Numara Software (May 2008–Oct 2011)

  • Responsible for all aspects of product development, with a larger team (26 full-time employees in 2 US locations, 13 offshore, 4 local contractors).
  • Integrated a 15-person development team in our Tampa office with the existing 10-person team in NJ, resolving vast differences in culture, skillset, personality & process.
  • Managed relationships with other departments, negotiating projects, processes and priorities.
  • Transitioned the team to more formal roles & processes, while retaining agility and flexibility.
  • Developed the team’s ability to work on multiple major releases in parallel, delivering some very large multi-year, multi-developer features, while still maintaining a regular release/update cadence.
  • Managed an 18-month redesign of the product with a design firm, successfully meeting our two goals: improving the product UI, and improving our team’s UX capabilities.
  • Employee development: worked with managers and developers to continually improve their skills and expertise, empowering them to grow as team leaders.

Development Manager / Lead, Numara Software (Aug 2006–May 2008)

  • Co-managed a 10-person development team, with 3 direct reports, while still playing the role of lead developer about 75% of my time.
  • Responsible for maintenance team, version control (migrated to Subversion), and builds.
  • Led initiatives focused on security, style, code reviews, and testing.

Lead Software Developer, UniPress Software (Nov 1997–Aug 2006)

  • Helped lead the development team as it grew from 2 to 9 developers.
  • Designed, developed, and supported key product features, including email integration, reporting, user rights, integrations with other products, authentication, automated business workflow, internationalization. 
  • Improved product performance, supportability, and stability. Worked with tech support (and directly with customers) to troubleshoot and fix problems.
  • Helped new hires develop intangible skills, e.g. the art of debugging, writing maintainable code, etc.

Education

  • Rutgers University: B.S. Computer Science, 1999.
  • ITIL Foundations certification for ITIL v2 and v3.
  • Thousands of hours spent following and contributing to programming forums.
  • Many books on software development and management.