Clay Ullrich


Location

El Dorado, CA
Webster, TX
Education
    Boston University
    August 2009 - April 2013
    degree
    Bachelor's
    major
    Computer Science
Work Experience
    Grinteq
    Senior Software Engineer
    New York, NY, US
    March 2020 - August 2024
    company
    Grinteq
    title
    Senior Software Engineer
    overview
    - Involved in creating a reusable component using React.js and Typescript for DOM manipulation - Developed multiple web applications using Next.js, leveraging its server-side rendering (SSR) and static - D esigned and developed web applications that supports identification and assessment for customers with insurance products using Angular JS, Bootstrap, HTML5/CSS3 for frontend - Worked with Node.js for writing code in the server side and creating scalable network applications - Documented API endpoints using OpenAPI specification - Developed robust RESTful APIs using NestJS and implemented real-time communication with Socket.IO, while managing database interactions with TypeORM and MongoDB, ensuring secure authentication with JWT, and optimizing performance through caching with Redis in an Agile environment - Assisted with troubleshooting and debugging of API-related issues - Developed scalable APIs using ASP.NET Core, integrating GraphQL to facilitate efficient data querying and enhance client-server communication while implementing robust authentication and authorization - Managed and optimized database systems using Azure SQL Database and Azure CosmosDB, developed - Cassandra for distributed data management, and configured Amazon S3 for secure and cost-effective - Developed and maintained cloud infrastructure using Heroku for application deployment, leveraging - Terraform to automate provisioning and management of resources across various environments - Implemented Kubernetes for container orchestration, ensuring high availability and scalability of microservices, while designing and managing CI/CD pipelines to streamline the development and deployment processes - B uilt prototype for various required services such as Logging, Scheduling and Notification Service using - Utilized the Hibernate Criteria API for database queries and CRUD operations - Used GCP for email services, integrated with JavaScript code - Built data pipelines and scaled data-centric software solutions using Kafka and Spark Streaming with API - Streaming Gateway REST feeds - Familiarity with message bus/queue frameworks (mainly, PubSub) and understanding of both relational and NoSQL database architectures - Automated build and deployment processes using Jenkins, shell scripting, Chef, Python, AWS Lambda, and CloudFormation - Participated in the Software Development Life Cycle (SDLC) using Agile methodology and Scrum - Created a Data Access Layer (DAL) using Spring Data and Hibernate ORM - Developed DAO interfaces, abstract classes, and concrete classes for database interaction - Involved in Test Driven Development by writing functional and unit test cases - Configured the Dispatcher Servlet, View Resolver, and Transaction Manager - Utilized Kafka message brokers and managed a Kafka Cluster with ZooKeeper - Working knowledge of logging, monitoring, query analysis, and metrics using tools such as Google Logs - Loggly, Splunk, Stackdriver, and Datadog
    Codebay
    Lead Full Stack Engineer
    San Diego, CA, US
    April 2018 - February 2020
    VironIT
    Full Stack Engineer
    New York, NY, US
    June 2014 - February 2018
    Innowise
    Project Intern
    Houston, TX, US
    May 2013 - March 2014
Skills
AdaptabilityAgile MethodologyAjax (Programming Language)Amazon DynamoDBAmazon S3Amazon Simple Queue Service (SQS)Amazon Web ServicesAngularJSAnsibleApache JMeterApache KafkaApache ZookeeperApple Mac SystemsApplication Programming Interfaces (APIs)ArchitectureASP.NETAttention to DetailAutomationAWS LambdaBackendBootstrap (Software)Business RequirementsCachingCascading Style Sheets (CSS)CassandraCircleciClient Server ModelsCloud ComputingCloudformationCloudwatchCommand-Line InterfaceCommunication SkillsContinuous DeliveryContinuous IntegrationCouchbase ServersCreating PrototypesCrudCrypto CurrencyCryptographyC Sharp (Programming Language)Cucumber (Software)Cypress (Programming Language)D3.JsData Access LayerDatabase AdministrationDatabase QueriesDatabasesDatadogData IntegrationData LoggingData ManagementData PipelinesData ProcessingData ProtectionData Storage TechnologiesData StreamingData VisualizationDevOpsDistributed Data StoreDjango Web FrameworkDockerDocument Object ModelEmber.JsExpress.jsFile Transfer Protocol (FTP)Front End Software DevelopmentGitGithubGoogle CloudGrafanaGraphqlGulp.jsHealing ProcessesHerokuHibernate (Java)HTMLHTML5Identity and Access ManagementInformation TechnologyInsurance Management and AftercareIssue Tracking SystemsJasmineJava Naming and Directory InterfaceJavaScript LibrariesJavaScript (Programming Language)Java ServletJenkinsJIRAJQueryJSONJunitKanbanKubernetesLeadershipLightweight Directory Access Protocols (LDAP)LinuxLoad BalancingMentoringMessage BrokerMessage Oriented MiddlewareMetricsMicroservicesMicrosoft AccessMicrosoft AzureMicrosoft SQL ServerMochaMongoDBMulti-Factor AuthenticationMySQLNestJSNetwork ServerNext.jsNginxNode.JsNoSQLOAuthOpenapiPassionatePHP (Programming Language)PoolingPostgreSQLProblem SolvingProject ManagementPython (Programming Language)ReactJSReact ReduxReal Time DataRedisReliability of SystemsRequirements AnalysisResponsive Web DesignRestful APIsRoute53Safety PrinciplesSalesScalabilitySchedulingScrum MethodologySearch Engine OptimizationSecurity Assertion Markup Language (SAML)SeleniumShell ScriptSoftware DebuggingSoftware DeploymentSoftware EngineeringSoftware SystemsSoftware Version ControlSpark StreamingSplunkSpockSpring DataSQL AzureSQL DatabasesStrategies of TestingStreamlineSyntactically Awesome Style Sheets (SASS)System AvailabilityTailwindTeam WorkingTerraformTest-Driven Development (TDD)Testing SkillsTime ManagementTradingTransport Layer SecurityTypeScriptUnit TestingUnix CommandsUser AuthenticationVue.jsWeb ApplicationsWeb Services