Senior Software Engineer
San Francisco, California
Software Engineer @ Splunk Researched, designed and implemented Microservice Observability library with Opentracing API and integration with vendors like Lightstep and Instana; logging with Uber's high performance logger zap and metrics with Prometheus.Implemented Microservice Observability library on top of OpenCensus.Kubernetes controller for managing custom resource type for in house projectsRequirement research, design and implement IIOT solutions that...
Software Engineer @ Splunk Researched, designed and implemented Microservice Observability library with Opentracing API and integration with vendors like Lightstep and Instana; logging with Uber's high performance logger zap and metrics with Prometheus.Implemented Microservice Observability library on top of OpenCensus.Kubernetes controller for managing custom resource type for in house projectsRequirement research, design and implement IIOT solutions that integrate with OPC UA & DDS software and Asset Management Frameworks. Microservice orchestration in Golang, that focuses on in-house development process. It interfaces with AWS API and other cloud providers.Mobile Analytics Infrastructure in Erlang San Francisco Bay AreaSenior Software Engineer @ Personal Open source Projects Contribute to various opensource projects.gen_rpc (An out of band RPC Erlang library that circumvents rex server bottleneck in standard rpc library. Gen_RPC is used internally in Splunk)* Implemented numerous RPC features missing in gen_rpc. * Added various tests and submitted bug fixes and improvements* Added travisCI. coverall.io, typespec. refactoring* Basho_bench performance test on gen_rpcLink: https://github.com/linearregression/gen_rpc.gitApache Spark San Francisco Bay AreaSenior Software Engineer - Data Intelligence Platform @ undisclosed Web Data Mining and Data Processing Pipeline (Phase1) Allow user to flexibly schedule and publish to target cluster for execution. Design and build with Erlang, Python. Uses Rabbitmq, Rabbitmq Exchange Federation, Quartz, Riak, Cowboy etc. Soft Real Time Data Collection & Distribution System. Realize a data processing workflow and coarse ingest data classification using RabbitHub, Rabbitmq and Topic exchange. Use Rabbitmq, RabbitHub (PuSubHubPub), Riak, Redshift, Ejabberd XMPP and Websocket.Traffic data integeration. Store server logs collected in Sumologic to Amazon S3. Use Spark to perform experiment to get insights. Setup Apache Spark, integrate and trouble SparkR on Cloudera CDH4 environment. From February 2014 to February 2016 (2 years 1 month) san francisco, californiaSenior Software Engineer @ Spark Networks Designed and implemented an internal authorization module for Ejabberd in Erlang. Applied OTP Design Principles and Release handling to all projects. Designed and implemented a REST API service to expose Ejabberd user presence data stored in Riak; event hooks to capture user data/activity from Ejabberd to publish to Rabbitmq. Automated part of Ejabberd cluster setup. Used Webmachine, Rabbitmq, Mnesia clustering, gen_event, gen_server, lager, parse_trans, jsx, rebar, etc.Designed and implemented Ejabberd IM Message Archive module to intercept user send/receive data event, publish chat messages to RabbitMQ for further processing. Use RabbitMQ topic based approach as building block for future data processing workflow between Ejabberd, internal API service, RHadoop, Hadoop ecosystem etc. Standardize data representation format using Thrift. Implemented Rabbitmq consumer service cluster in Erlang. Used rabbitmq_elrang client, gen_server_cluster, several RabbitMQ behavior modules (amqp_gen_consumer, gen_server2 etc), gen_server, gen_event and Mnesia clustering. Designed Peer2Peer Voice and Video chat for Ejabberd. Jingle inter-working with Stun and Turn servers. Client side uses feature detection for graceful browser capability transition. Used Webrtc,Html5 for both Mobile and Full Web site, Flash fallback for Web app. Implemented Mobile message push notification gateway service as Rabbitmq Plugins for Android (GCM) and IOS (APN). Advocated Eunit and Common Test Framework for regression tests to organization. Quickcheck, Proper for property based check. Dialyzer code analysis for Erlang development process. Rebar for build and release handling.Researched, designed a plugin free real time video and voice chat functionality for IM system. Researched Octave/R integration to event collection for fasterdata experimentation. Architect, design and implement Event Correlation And Analytic System using RabbitMQ, Hive, Hbase, Hdfs, Hadoop and Ozzie etc From March 2013 to February 2014 (1 year) los angelesSenior Software Engineer @ AT&T Learning Machine learning Algorithm and Tools for resource optimization, modeling techniques using Octave.Developed various applications in multiple business departments: Advertising Engineering (Core System) and Application ServicesCloud Computing (IaaS and PasS): Cloud Application infrastructure performance management and availability service.* Designed and developed a Customer Invoice System to manage cloud account billing information, built with ASP MVC customized with Twitter Bootstrap and Jasig Single Sign On Authentication.* Designed and implemented a virtual instance performance statistics collection service for cloud instances. * Platform As A Service opensource solutions evaluated CloudFoundry, TorqueBox and an in-house solution* Implemented several chef deployment receipts for an in-house Openstack environment.Cloud Application Deployment Automation* Enhance in-house Git Hooks script for cloud application automatic deployment* Development environment: Erlang OTP R14, Bash-script and Ruby 1.9+, Riak, Rebar, log4erl, SimpleBridge, WebMachine; OTP framework: gen-server, gen-event, gen-fsm, sasl etc; Erlang Datastore: Ets, MnesiaSystem Email: Template Mailing System that provides an Restful Web API service to StrongMail Appliance. System scale horizontally.* Implemented Restful Web Api using ASP.Net MVC (instead of WCF) hosted in IIS7+. Integrated with internal enterprise Single Sign On service for security. * Integrated with RabbitMQ 1.8+ for message type sub-classification, queuing, and message delivery * Implemented worker agents for email message workflow transition, throttling and some durability before interfacing to StrongMail Appliance. MS-SQL 2008 for status tracking.*Single-handedly provided production support, troubleshoot and fixing production issues. Technology transition to another team of 5 to take over.Development environment: C# 3.5, C# 4.0, ASP.NET MVC2, WCF 3.5, IIS7+, Windows 2008 R2 64bit server. From April 2009 to March 2013 (4 years) .Net Developer (Infrastructure Team) @ MySpace (News Corp) Designed and developed several in-house infrastructure middleware application servers that required to withstand serves heavy traffic. Guided and trained Software Test Engineers for testing the middleware applications. Performed comprehensive unit test and end-to-end system integration test. Peer Code reviews.Development Environment: C#3.0, Microsoft Concurrency and Coordination Runtime, Berkeley DB 4.7+Generic Counter: A MySpace DataRelay plugin component that provides semi-persistent storage, updating and querying interface for all Myspace web counters.* Enhanced component to support multiple counter types for better resource utilization.* Interfaced with Berkeley Database for semi-persistence storage because of insufficient throughput on direct interface with MS-SQL servers. * Implemented counting capping and throttling strategy to minimize counter gaming that unfairly boost up display relevance.BounceMail and DoNotMail System: An in-house outgoing mailing service system that filters and drops black-listed senders and receivers mail traffic.* Enhanced system to cache and verify banned lists before interfacing with outgoing mailing transfer agent.* Unit test and system level end-to-end testing based on a subset of RFC831,822 specifications.ListCache And Counter Populator* Refactored ListCache for better encapsulation, cohesion and flexibility on package, class and method responsibilities.* Integrates counter populator with Transactional Manager for more reliable counter updates. From March 2007 to April 2009 (2 years 2 months) Software QA Engineer @ Symantec Automation Test framework development.Performed security threat modelling, static code analysis, code review, various runtime software quality analysis tools and product performance profiling instrumentation.Symantec Enterprise Endpoint (vsn 2.0, 3.0)* Performed threat modelling for detecting potential weak software requirements, design and architecture * Developed test strategy, test plan and test cases for Product Migration, an area that is traditionally received the least customer satisfaction, generated the most support calls.* Led a team for Migration Scenario testing. This results 97% success rate, the best customer experience, in migration since product inception. * Performed code review, design review and functional specification review. Evaluate several security tools and other third party tools, as part of best practices, to improve software defects prevention. * Used Numega Bounds Checker to identify resource leaks, Intel VTune to profile for potential hotspots and Code Coverage on C++ code base. Used Coverity for static code scan on Symantec Corporate CodeBase for to discover potential suboptimal coding practice and/or security vulnerability such as buffer overrun. * Employed Eclipse plugin Checkstyle, Findbugs & Jikes to help in identifying potential bad practice and security vulnerability on Java Application such as SQL injection. * Identified and fixed defects in Symantec Reporting Manager. Programmed Perl scripts to plugin into Nessus. TOAST (Test automation system) * Enhanced, tested and fixed TOAST, a customized JUNIT based framework, for basic acceptance test. The automation system lets users create, edit and submit tests to the backend server, deploy tests, request the machines to re-image themselves and execute tests and report test results from webpage frontend.Development environment: MS VC++, C++, Java, Perl, Eclipse, Tomcat, Struts, Postgres, MYSQL, RedHat, Windows (Various client and server platforms). From June 2002 to March 2007 (4 years 10 months) Member of Technical Staff @ Intel (Trillium Digital Systems) Developed a automation test framework for API driven black box testing. Designed protocol specification verification and validation test suites to ensure conformance.Trained and supported various project teams and outsourced Azisa testing service provider.Development environment: C, ANSI C, Python, Solaris, WindRiver System, GCC, G++, CC, ARM AsmMPLS Protocol Validation3GPP Wireless Protocol Validation and Stacks Integration* Integration and validation of MPLS protocol stacks. Use IBM Insure for static code analysis on protocol layer.* Protocol stack integration on Intel Strong ARM driver layers. * Mocked client protocol layers to validate GMM/SM layer against 3GPP specifications. Detected, reported and debugged 637 noncompliance and product defects. Common Test Framework Development (CTF) Development* Reduced protocol stacks integration time by 2/3 by designing and developing CTF in Python and C. This was to enable runtime test script editing to avoid compilation cycle. Also enhanced test script building, management and results reporting.* Improved test suite development process by integrating PyChecker, a static analysis tool for catching otherwise runtime defects. From July 1999 to October 2002 (3 years 4 months) Manufacturing Test Engineer @ Nortel Networks Developed, and maintained production acceptance test system. Manufacturing. Developed and designed automation test suites and scripts to execute tests batches in parallel, increased production throughput x8.Development environment: C, C++, Tcl/Tk and Expect at functional and system test stage for Passport 4400,Marathon and VoIP products. * Ensured modules interoperability based on customer orders from designing an implementing system level tests for Passport 4400, Marathon and VoIP products that consisted of building a small network for data, fax, voice and modem traffic testing. * Led a 9-person team for functional and system test staging, production yield and process improvement, defects root cause analysis, and manufacturing outsourcing viability improvement Passport 4400 and Marathon Enterprise Multi-service Switch Product Line* Improved test coverage by 1/3 through implementing a board-level diagnostic program in C for production level functional testing and heat chamber testing. * Prevented hidden product defects from reaching customers by discovering and identifying a diagnostic program defect and defective Power Supply design on Marathon Product line. * Participated in production process integration and improved deliverables by gaining management team support to cut through ‘process red tape’ to achieve goals and delivery results. Nortel VoIP (Voice Over IP) Gateway Product line* Designed and implemented a BABT (British Approval Board for Telecommunications) test for Nortel VoIP Gateway and Nortel Passport 4400 to ensure equipment regulatory conformance. * Prevented a possible production transition gap through efficient transition planning from in house to Samina-SCI Systems that led to a stabilized full production yield. From July 1997 to June 1999 (2 years)
Splunk
Software Engineer
San Francisco Bay Area
Personal Open source Projects
Senior Software Engineer
San Francisco Bay Area
undisclosed
Senior Software Engineer - Data Intelligence Platform
February 2014 to February 2016
san francisco, california
Spark Networks
Senior Software Engineer
March 2013 to February 2014
los angeles
AT&T
Senior Software Engineer
April 2009 to March 2013
MySpace (News Corp)
.Net Developer (Infrastructure Team)
March 2007 to April 2009
Symantec
Software QA Engineer
June 2002 to March 2007
Intel (Trillium Digital Systems)
Member of Technical Staff
July 1999 to October 2002
Nortel Networks
Manufacturing Test Engineer
July 1997 to June 1999
Researched, designed and implemented Microservice Observability library with Opentracing API and integration with vendors like Lightstep and Instana; logging with Uber's high performance logger zap and metrics with Prometheus.Implemented Microservice Observability library on top of OpenCensus.Kubernetes controller for managing custom resource type for in house projectsRequirement research, design and implement IIOT solutions that integrate with OPC UA... Researched, designed and implemented Microservice Observability library with Opentracing API and integration with vendors like Lightstep and Instana; logging with Uber's high performance logger zap and metrics with Prometheus.Implemented Microservice Observability library on top of OpenCensus.Kubernetes controller for managing custom resource type for in house projectsRequirement research, design and implement IIOT solutions that integrate with OPC UA & DDS software and Asset Management Frameworks. Microservice orchestration in Golang, that focuses on in-house development process. It interfaces with AWS API and other cloud providers.Mobile Analytics Infrastructure in Erlang
What company does Edward Tsang work for?
Edward Tsang works for Splunk
What is Edward Tsang's role at Splunk?
Edward Tsang is Software Engineer
What industry does Edward Tsang work in?
Edward Tsang works in the Information Technology and Services industry.
Who are Edward Tsang's colleagues?
Edward Tsang's colleagues are Serena Zhang, Amaan Karim, Paul Kang, Cameron Parsons, shuhan zhang, Troy Molander, Dominick Petracca, Nishanth Reddy, Bin Luo, and Adithya Ramakrishnan
Enjoy unlimited access and discover candidates outside of LinkedIn
One billion email addresses and counting
Everything you need to engage with more prospects.
ContactOut is used by
76% of Fortune 500 companies
Edward Tsang's Social Media Links
/company/s... /school/yo...