Golang Developer Resume
Palo Alto, CA
PROFESSIONAL SUMMARY:
- 7+ years of work experience in all phases of Software Development Life Cycle (SDLC) including Software Design, Development, Testing, Maintenance, Enhancement and Implementation of Enterprise applications
- 2+ years of hands - on expertise in using Golang in developing microservices and REST web services using Gin, and Beego.
- Experience in Redis for implementing cache, with persistence and replication ability for frequently used data.
- Managed Docker orchestration and Docker containerization using K8s.
- Hands-on experience with consumer, producer APIs using Apache Kafka.
- Develop services integrating with various cloud services like AWS (Lambda, EC2, EKS, ECS, S3, SQS, SNS,)
- Skilled and experienced in using Concurrency, gRPC, Protocol Buffers in Golang.
- Worked on Docker Container, Docker Hub, creating Docker images and deploying them to K8s.
- Proficient knowledge in Helm charts to manage and release helm packages
- Hands-on experience working with drivers to perform tasks such as CRUD operations and writing complex queries with SQL (Oracle, PostgreSQL, and MySQL).
- Excellent experience with source version control tools such as Git, Bitbucket, and Subversion (SVN).
- Hands-on experience with CI/CD tools like Jenkins for continuous integration and End-to-End automation for all build and deployments in different environments.
- Proficient in Development methodologies like Agile and Safe, with two-week sprint planning, daily standups, story grooming, and story demo.
TECHNICAL SKILLS:
Programming Languages: Go, Java1.8, JavaScript, Typescript and SQL.
Frameworks: Spring, Spring Boot, Hibernate and Structs, Gin, Beego.
Web Technologies: HTML, CSS, React, bootstrap, Typescript, Spring MVC.
IDEs: Eclipse, IntelliJ, Spring Tool Suite and Visual Studio Code.
Methodologies: Agile, TDD and Waterfall model.
Database: Oracle, MongoDB, PostgreSQL, My SQL, REDIS.
Version Control: GitHub, Bit Bucket.
Automation Tools: Jenkins
Containerization Tech: Docker, K8s
Cloud: AWS, Azure
PROFESSIONAL EXPERIENCE:
Golang Developer
Confidential, Palo Alto, CA
Responsibilities:
- Developed new RESTful API services using Go, various AWS services, Docker, PostGres database.
- Build services using Golang that produce and consume messages using go-routines from Kafka topics and update user records.
- Built frontend modules using react for compile time validation, flexibility, and other benefits to provide us with better performance.
- Used Redis with message broker, utilizing it to perform caching to avoid calls to the database for the task which are in frequent use.
- Proficient with container systems likeDockerand container orchestration likeEC2 Container Service and EKS. Integrated EKS into the applications to manage it.
- Used Jenkins pipelines to drive all micro services builds out to the Docker registry and then deployed to K8s, Created Pods and managed using K8s
- Created dynamic routing/load balancing capability enabling large application scaling, used ingress rules and Ingress Controllers.
- Constructed a connector framework using Golang Kafka endpoints connectivity.
- Rewrote microservices that needed more throughput and less latency from Java to Golang and achieved a huge increase in throughput and a huge reduction in memory usage.
- Developed serverless applications in Golang and deployed them to AWS lambda.
- Used AWS connect for cloud customer care service to design contact flows.
- Built microservices using Branch Pattern to consolidate the response from multiple microservices.
- Develop services that work with S3 buckets and SNS services to read transcription data and notify the systems on successful processing.
- Executed microservices based cloud architecture on AWS platform.
- Experience with container-based deployments using Docker, working with Docker images, Docker Hub and Docker-registries and K8s.
- All the services are dockerized and pushed into the organization's docker registry.
- Developed CRUD operations in Golang using go-SQL-driver to connect with the PostGres database.
- Performed troubleshooting on the application and database issues in Production and resolved them below the SLA timelines.
Environment: Golang, Java, React, AWS, Gitlab, Redis, Kafka, PostgreSQL, K8s, REST, Linux, Docker, AWS connect
Golang Developer
Confidential, New York, NY
Responsibilities:
- Developed web services in Golang using the Beego framework, gRPC and Protocol Buffer.
- Developed application to handle concurrent data collection and processing with Goroutines, channels for different business models and using Mongo DB documents to store and manipulate it.
- Used Kubernetes dashboard/kubelet monitoring tools and designed network architecture for Kubernetes pods/containers with implementing load balancer as per the influx of data.
- Implemented Kafka producer and consumer applications on Kafka cluster working with Producer and Consumer API.
- Used Redis for frequent queried tasks and Cassandra for more persistent storage.
- Responsible for writing Web API controllers for providing REST services and making API calls using Golang.
- Containerized the services using Docker files and deployed them into the Kubernetes cluster.
- Used Kafka APIs to produce asynchronous messages using multiple go routines.
- Written common proto file which is used by the services.
- Worked with in house big data framework to aggregate and process the data which uses spark.
- Extensively worked with scheduling, deploying, managing container replicas onto a node using K8s and experienced in creating Kubernetes clusters work with helm charts running on the same cluster resources.
- Developed user interface by using theReact JS, FluxforSPAdevelopment.
- Involved in Unit Testing and Integration testing in development environment and ensuring application is according to specifications.
- Utilized GoMock to mock client calls for unit testing in Go.
- Worked with the DevOps team to prepare the Jenkins Jobs for build and deployments.
- Migrated go microservices into azure cloud
- Good knowledge in building docker images and deployment to Azure cloud services.
- Integrated Jenkins to git where the build triggers automatically when we push a pull request for CI/CD
- Produced and Consumed Restful Web Services using Postman Rest Client to interact with different applications from third-party tools.
Environment: Golang, Bitbucket, React, Cassandra, Kubernetes, gRPC, Azure,WebSocket, REST, Redis, Oracle, Docker, Rest, Soap.
Java Developer
Confidential
Responsibilities:
- Developed the crucial process like: CPD, Streamers and Snaps for data extraction and streaming where in used collections, multithreading I/O a great deal.
- UsedIN MEMORYMySQL database tables for storing the HUGE amount of data 160 GB data for current day and normal DB engine for storing the historic data.
- Junit and test mock implementations.
- Used variousdesignpatterns in the application: Singleton, Factory, Builder patterns etc.
- Design and Development of High Performance CPD processes by usingmultithreadedprocesses which in turn improved the performance by a lot.
- Designed and developed UI desktop application usingswings.
- Development of independent components for integration with other applications
- Coordination with QA for the application testing
- Involved extensively in writingSQLand PL/SQL Stored Procedures and Functions.
- Debugging fixing production issues.
- Developed certainRMIservices for getting data from CPD process to tomcat server.
- Written large number ofOracle10g queries, functions, procedures including creating tables, indexes, and the main usage for ORACLE was for entitlements and user portfolio information.
- Application deployment onJboss, Tomcat, and Resin and as standalone Java processes.
- Worked onJMSservice for a multicasting the data among various systems.
- Worked highend oncollectionsandmultithreading.
- Worked onLINUXcommands to manage and setup the environments for running the applications.
Environment: Struts2, EJB, JDBC, JMS Multicast, JBoss Application Server, Oracle Database, MySQL Database, Apache Tomcat, Resin, CVS, Multithreading, RMI
Java Developer
Confidential
Responsibilities:
- Java development for different components. Developed the application usingCore Java,Multi-Threading, Collections in abundance,REST for backend APIs, My SQLas DB server, Maven.
- Created Restful web services using Jersey framework JAX-RS.
- Developed Test cases, Test scenarios Test scripts for Unit testing and test mocks.
- Used multithreading for writing the collector parser and distributor process, which was getting realtime data from zacks API in format ofJSON,usingmultithreadingimproved the performance by a lot. Moreover, using concurrency package ofcollectionsmade it thread safe.
- Coordination with QA for the application testing
- Involved extensively in writing SQL and PL/SQL Stored Procedures and Functions.
- Developed rich user interfaces using HTML, CSS and JavaScript.
- Used git for version control and Jira for bug tracking and work progress.
- Application deployment onTomcatand as standalone Java processes.
- Worked onJMSservice for multicasting the data among various systems.
- Worked highend on collections and multithreading.
- Worked on LINUX commands to manage and setup the environments for running the applications.
Environment: REST, SVN, RMI, JMS, Tomcat, Multithreading, RMI, Maven, Collections, Multithreading.