Recent Employment
Mar. 2020 – present
(full time)
Software Architect,
Director Of Engineering,
Alianza
(Lehi, Utah)
- Manage cross-cutting technical concerns for multiple teams.
- Encourage a culture of robust technical communication.
- Administer technical design reviews.
- Work with Product to ensure technically sound requirements.
- Ensure teams' compliance with technical standards.
- Promote technical health of assigned domains.
- Train teams on Git usage and effective PR techniques.
- Develop and maintain AWS SNS topic registry.
- Ensure performance and delivery of 5 engineering teams.
- Address teams' engagement challenges and mitigate attrition.
- Strategically build and staff teams to meet changing business needs.
- Organize and simplify work management processes.
- Transition remote teams to on-call software ownership model.
- Lead technical interviews for front and back end candidates.
- Scrutinize and approve contractor invoices.
- Organize and clarify business requirements.
- Lead Angular/Java team to develop auto-attendant system.
Sep. 2018 – Feb. 2020
(full time)
Principal Software Engineer,
Ancestry
(Lehi, Utah)
- Develop and maintain mission-critical backend microservices.
- Mentor junior/senior engineers.
- Cost-optimize existing microservices.
- Present formal trainings on essential technologies.
- Design/create system for migrating large, in-flight production data sets between incompatible database technologies.
- Train team in new Java features, transitioning from Java 8 through Java 11.
- Prepare written overviews for challenging problem domains.
- Lead team in effective Git usage strategies.
- Develop unifying common library in support of multiple projects.
- Lead team in developing and adopting effective code review processes, promoting techniques for building reviewable code submissions.
- Develop Java client libraries for backend web services.
- Review all code submissions, offering written guidance for improvement and leveraging teaching opportunities.
- Lead team in Scrum ceremonies.
- Author resources for rapid code development.
- Implement/maintain GDPR support for multiple systems.
- Develop team's dev setup guide.
- Interview new manager candidates.
Nov. 2014 – Sep. 2018
(full time)
Principal Software Engineer, Tech Lead,
Workfront
(Lehi, Utah)
- Lead development of tenant/user profile unification service for unifying profiles across segmented product line.
- Port flagship product to Java 8.
- Port flagship product to Wildfly application server.
- Overhaul configuration framework in flagship product.
- Invent procedure entry/exit logging framework with graphical visualizer for post-mortem debugging.
- Manage application deployment processes for complex, high-cardinality lane configuration.
- Maintain proxy sign-in service for customer support.
- Troubleshoot and repair complex bugs in flagship product.
- Design and build application gateway.
- Drive synergy between Dev and QA to improve knowledge transfer and testing effectiveness.
- Discover and proactively log numerous bugs outside assigned area concern.
- Promote sane unit testing practices.
- Maintain search indexer service.
Mar. 2007 – Nov. 2014
(full time)
Development Lead/Manager,
Senior Software Engineer,
Corp. Of The Presiding Bishop
(Riverton, Utah)
-
Manage employee performance:
- Conduct monthly 1-on-1s.
- Administer biannual performance reviews.
- Promote employee growth through relevant challenges and feedback.
- Address specific performance concerns through compassionate but direct intervention.
- Interview prospective employees and make hiring decisions.
-
Lead teams developing enterprise software solutions for the church's missionary program, using Java and .NET technologies:
-
Architect and lead development of application to generate dynamic, individualized information booklets in multiple languages.
- System mass-generates thousands of documents per week as part of an essential business process.
- Complex documents are automatically assembled from 5 different media types on industrial printers.
- System includes content editor and configurable rules engine to support constantly shifting business requirements.
- System incorporates versatile, semi-automatic translation learning processes.
- Manage development team building the application used by church leaders to make and record missionary assignments.
- Organize and coordinate the emergency efforts of several product teams to address a sudden and dramatic change in missionary funding policies.
-
In general, routinely:
- Architect effective solutions for complex problems.
- Establish clarity from ambiguous requirements and build team consensus.
- Manage teams using agile methodologies.
- Develop, formalize, document, and promote team standards, processes, etc.
- Build relationships of trust with the customer.
- Plan and estimate projects.
- Provide timely and effective customer support.
- Develop web portal for missionary force, automatically customizing content based on user role and status.
- Develop Facebook/Twitter module for uploading personalized photo badges.
- Develop Android-based personal organizer software for missionaries.
- Maintain statistics reporting system based on InfoPath web forms hosted in a SharePoint environment.
Additional employment history is available.
Education
M.S. Computer Science,
Brigham Young University
(Provo, Utah),
1999.
B.S. Computer Science,
Brigham Young University
(Provo, Utah),
1995.
- Minor in Physics.
- Minor in Japanese.
- Minor in Mathematics.
- Magna Cum Laude, GPA 3.91.
- Academic achievement scholarships, full-tuition, yearly, four consecutive years.