This document contains the resume of Satyam Singh. It summarizes his work experience as a Senior Software Engineer at Ericsson Global India Pvt Ltd from 2013 to present, where he has worked on projects involving Diameter and SS7 protocols. It also outlines his previous experience as a Software Engineer at Telesys Software from 2010 to 2013, where he worked on Diameter and SS7 protocol stacks. The resume lists his technical skills and qualifications.
I have Over 8+ years of experience as a DevOps Engineer. I came across an interesting position of DevOps Engineering position on your Linked post. Constantly updating my skill set, I am proficient in DevOps Tools like Git, Jenkins Pipeline Automation, AWS, Chef, Ansible, Kubernetes, Terraform, Docker, Shell Scripting,ELK, Jfrog and Prometheus.
1. Satyam SIngh
+91- 9990795192,
satyam.singh22@gmail.com
Linkedin: http://lnkd.in/6qBC8j
Sector 21 Gurgaon, India
Profile
Software developer having rich experience in Layer development for SS7 and Diameter base
protocol stack. Worked on Next Generation Multi Mediation(NGMM, an Ericsson product) using
Apache Storm and Hadoop (HDFS) technologies. Develops generic framework for realizing NGMM
components on storm framework's spouts/bolts. Integrated HDFS with one of the NGMM
components. Holds SCJP(Java) and RHCE (Linux) certifications. Rich experience of C and Core
Java programming skills on Unix based platforms.
Area of Expertise
Have rich experience of 4.8 years in software development and unit testing:
Expertise in C, Core Java programming languages.
Rich Diameter protocol experience in diameter base stack and applications development.
Rich SS7 stack protocol layer experience in development specifically MTP3 and hands-on
with SCCP. Knowledge of SIGTRAN, M2PA, MTP2, ISUP, SIP protocols.
Rich Experience in working on Unix based platforms
Hands-on experience with Shell Scripting on UNIX environment.
LTE core network EPC knowledge in terms of 3gpp docs studies for Rx,S9, Gx interfaces and
for DRA (Diameter Routing Agent) .
Worked on Apache Storm and Develops framework for realizing components on spouts/bolts.
Experience of installing and running Hadoop2.2.0 on linux platform.
Experience of installing and running Apache storm 9.0 on linux platform.
Have worked with version control systems CVS and GIT.
Have worked with build tool Maven and Gradle.
Well versed with Eclipse IDE for Java programming.
Well versed with Vim editor along with ctags for C programming.
Agile methodology of product development.
Possess excellent communication and interpersonal skills with strong aptitude towards
learning new technologies.
Rich experience in Source Debugging, Analysis and Review.
Technical Proficiency
Programming Language(s) : C, JAVA
Database : SQLite, MYSQL, Postgress
Operating System : Windows, UNIX based
Tools : Putty, Ethereal, Wireshark, Cmake, Gerrit, Bugzilla,
Jenkins, Gdb, Cvs, Git
IDE’s : Eclipse Indigo
1
2. Achievements
Received ACE award in Q1 2014 at Ericsson R&D Gurgaon
Promoted to Senior Software Engineer in just 2.8 years of experience
Done SCJP certification during my 2nd year of B.Tech (Graduation)
Done RHCE certification during my 3rd year of B.tech (Graduation)
Got an exponential package growth
Got and offer from Line Manager for “sub system architect” promotion in mid year IPM 2014
Professional Experience
Ericsson Global India Pvt Ltd. R&D Gurgaon Www.ericsson.com
Senior Software Engineer April 2013 – Present
(Software Developer)
Product Handled: MultiMediation
Ericsson wide product used in IMS core network for mediation functionality between charging nodes.
Mediation functionality includes enrichment, consolidation and protocol transformation.
At high level functional description MM consists of Front-End, Processing and Backend Activities.
Front-end activity interfaces communicate with the network nodes and listen to the incoming protocol data
packets and populate the received data into an internal message. The internal message is forwarded to
the business logic. After the request has been processed and answered by the backend system it is sent
back to the client.
Business Use Case (BUC) Handled:
Architectural Design of Load Balancer in Diameter Backend Node for Ericsson Mediation Product
Technology used : Java6, Diameter protocol, Linux platform
Team size : 2
Load Balancing was implemented for stateless diameter at stack in round robin manner. My design is to
make it for statefull diameter also. Also design for standby peer support in failover/fallback scenarios.
For this I have used in memory persistence for session data which is used in cases switchover of peer for
minimizing data loss at least for INITIAL request.
Architectural Design of framework for realizing any business logic on storm spouts and bolts
Technology used : Storm9.0, Java7, Linux platform
Team size : 4
Designed base model for wiring our business logic components on storm framework spouts and bolts.
Also designed deployment view as local or cluster along with configuration framework. Design is so
extensive that we can deploy any component developed using exposed api in pluggin and play.
Internally it is divided it two sub projects: topology-builder and executor framework.
2
3. Topology-builder responsible for loading components and wire them in spouts and bolts based on given
configuration (number of spouts and bolts used for realization). Two Level of wiring using graph is
developed before final realization on spout and bolts.
Executor framework responsible for executing business logic realized on each spout/bolt and emitting to
next bolt down the topology. Framework take care of tuple tree built during tuple flow so that acking and
transactional cleanup taken care efficiently.
Development of bidirectional support in architecture as storm framework doesn't support
response flow in topology
Technology used : Storm9.0, Java7, Linux platform
Team size : 1
For scenarios where we want bidirectional flow in storm, have used spout at the response end of topology.
Also, storm has limitation that it can't emit from different threads in bolt. We have developed separate
responder thread at both initiator and responder ends of topology.
Development of Failure Listener framework in executor framework explained in BUC 1
Technology used : Storm9.0, Java7, Linux platform
Team size : 1
For scenarios where we want works that executed in each bolt required to do some failure handling. For
this requirement I have exposed interface that would be implemented by all those work that required to do
some failure handling. In framework level I have used failing mechanism at bolt for which trigger point is
exception occurred during processing at execution of works. Then this fail is triggered at spout through
storm framework. At spout I have create and broadcast failed message to be processed at works
implemented FailureListener interface.
Code Integration of one of the FTP component in mediation with the hadoop2.2.0 for distributed
storage.
Technology used : Storm9.0, Hadoop2.2.0, Java7, Linux platform
Team size : 1
For FTP component we want temporary storage at distributed location during collection, processing and
distribution activity of mediation. For this BUC I have integrated hadoop2.2.0 using camel-hdfs component
by modifying its source code for our production requirement.
Automation of diameter node XML generation instead of manual creation.
Technology used : Doc/Xls parser, Java7, Linux Platform, Diameter protocol
Team size : 1
In Ericsson Multimediation, for topology in which Diameter Front-End Activity used receives diameter
protocol messages from network element(NE). This activity already holds parsed XML objects for specific
diameter node XML. Received message from NE is then validated message for this node using parsed
XML and message info. Message data is then populated in internal data structure Map Event that is used
further throughout mediation flow.
3
4. My task was to generate this node XML. It was created manually before based on node specification docs.
I have taken 3gpp specification docs related to given diameter node as input and then parsed them and
generate dictionary of Avp definitions and Message definitions. Using this dictionary and provided node
definition documentation, generated XML that is used in mediation.
ADTEL Software Pvt Ltd. R&D Noida Telesys Software – India Development
Center
Software Engineer June 2010 – April 2013
(Software Developer) Www.telesys.com
Project handled: Diameter base stack
BUC handled:
Development of Authorization and Accounting state machine as per RFC 3588
Technology used : C, Linux platform
Team size : 2
Developed Auth/Acct state machine as per rfc 3588 and integrate it to other BUCs for end-to-end
completion.
Product handled: MACH7-iSTP (STP node in SS7 core network)
BUC Handled:
MTP3 layer development based on ITU-Q704 specification
Technology used : C, Linux platform
Team size : 3
I have implemented MTP element configuration and initialization. Optimize memory used by analyzing and
reducing unused memory Ex. Reducing global array size and Large structure heap allocation sizes during
stack initialization. Also implemented Change Over and Change Back fail Over and fail back mechanism.
Also Implemented HA (High Available feature) for MTP3 layer.
Local Number Portability (LNP)
Technology used : C, Linux platform
Team size : 2
It corresponds to Mobile Number Portability that generally we use in mobile networks today. I have made
LNP C part implementation in SCCP layer. In MACH7-iSTP LNP is based on JNI (Java Native Interface)
framework and i have cover its C implementation side.
Development support of ISUP AND SIP protocol bridge gateway product - IBG
Technology used : C, Linux platform
4
5. Team size : 2
It provides seamless behavior between SS7 networks with IP network. I have been assigned for IBG bug
fixing when reported from customer.
Develop a L2 simulator which supports both M2PA and MTP2 protocols
Technology used : C, Linux platform
Team size : 2
Simulator for both protocols are developed independently, I have merged them in a single simulator.
Design for new CLI support in product
Technology used : C, Linux platform
Team size : 1
Designed New command line interfaces and corresponding changes in Provisioning Server.
Apart from above BUCs I have been rigorously involved in numerous bug fixing in C resolves n
number of cores and memory leaks.
Educational Qualification
Bachelor of Technology (Computer Science & Engineering), 2010
BundelKhand Institute Of Engineering And Technology, Jhansi
(Government College of UP Technical University)
72%
XII (CBSE), 2003
St. Atulanand Convent school, Varanasi
75%
X (CBSE), 2001
St. Atulanand Convent school, Varanasi
81%
Personal Information
Date of Birth April 22, 1986
Gender Male
Marital Status Married
Nationality Indian
Language English, Hindi
5
6. Team size : 2
It provides seamless behavior between SS7 networks with IP network. I have been assigned for IBG bug
fixing when reported from customer.
Develop a L2 simulator which supports both M2PA and MTP2 protocols
Technology used : C, Linux platform
Team size : 2
Simulator for both protocols are developed independently, I have merged them in a single simulator.
Design for new CLI support in product
Technology used : C, Linux platform
Team size : 1
Designed New command line interfaces and corresponding changes in Provisioning Server.
Apart from above BUCs I have been rigorously involved in numerous bug fixing in C resolves n
number of cores and memory leaks.
Educational Qualification
Bachelor of Technology (Computer Science & Engineering), 2010
BundelKhand Institute Of Engineering And Technology, Jhansi
(Government College of UP Technical University)
72%
XII (CBSE), 2003
St. Atulanand Convent school, Varanasi
75%
X (CBSE), 2001
St. Atulanand Convent school, Varanasi
81%
Personal Information
Date of Birth April 22, 1986
Gender Male
Marital Status Married
Nationality Indian
Language English, Hindi
5