Software Architect Resume
SUMMARY:
- Architect adept at design and development of highly scalable, low latency, high throughput mission critical enterprise products/applications using distributed architectures and cloud - based technologies. Hands-onexperience scaling applications, infrastructure, and configuration with cloud-based IaaS provider
- Architecture, design and programming skills.
- Strong background and knowledge of IaaS, PaaS, and SaaS concepts.
- Amazon web services (AWS)
- Microservices architectures.
- Strong expertise in Software Engineering Design principles and patterns.
- Technical Manager - Agile development, managing scrums.
- Excellent analytical and problem solving skills.
- Strong decision maker and excellent communicator.
- Lifelong learner.
- Deep understanding of distributed systems and web services technology.
- Functional programming using Java
- Strong experience in Java Enterprise Frameworks such as JavaEE, spring framework, web servers (Tomcat) and Application Servers (JBoss, Weblogic, and Websphere).
- Mobile (Android) application development.
- Java and Enterprise design patterns.
- Built products/applications for multiple domains such as Internet of Things (IOT). Connected home gateways, Mobile Apps, Data Warehousing and Analytics, Finance, and Storage.
TECHNICAL SKILLS:
Operating Systems: Unix, Linux, Windows
Languages: Java8.0, Python, JavaScript, HTML
Web Technologies: Servlets, JSF, JSP, NodeJS
Databases: Postgres SQL, Oracle, DB2, MS-SQL Server
NoSQL Databases: mongoDB, Redis
Enterprise Technologies: Spring Framework, Spring Boot, Spring Data, SpringAMQP/RabbitMQ, Hibernate, JWT, Spring Security, OAuth2, JavaEE
Web/Application Servers: NGINX, Apache, Tomcat server, JBoss/Wildfly application server
Cloud Technologies: Amazon web services, VPC, EC2, S3, RDS, Elastic Cache, Elastic Load Balancer, Route53, CloudWatch, and CloudFormation.
Protocols: XCP/XMPP, Jabber XMPP Server, HTTP
Frameworks: ANT, Maven, Log4J, SLF4J, ELK
Web Services: REST web services, RESTEasy, Restlets, SOAP
Mobile Technologies: Android, UI Components, Google Cloud Messaging, Broadcast Receivers, SQLite, Content Providers, IntentService
Configuration Management: SVN, Git, Bit Bucket, Jira
Tools: UML, Rational Rose, Design Patterns, JMeter, SOAPUI, CharlesProxy, JBoss Drools, TOAD
Debugging Tools: JConsole, VisualVM, JProfiler, JBoss Profiler
Container Technologies: Docker, Docker Compose, Docker Swarm
PROFESSIONAL EXPERIENCE:
Software Architect
Confidential
Responsibilities:
- Architecture and design of ROS server side components on AWS cloud platform using services such as VPC, EC2, S3, RDS, Elastic Cache, Elastic Load Balancer, Route53, CloudWatch, and CloudFormation.
- Re factoring of monolithic applications to a Microservices/Component based architecture.
- Microservices development using Spring Boot, spring framework, Spring Data, Spring Web, Spring Actuator, Hibernate and PostgreSQL technologies.
- Knowledge of various microservice patterns. Implemented Proxy, Aggregator microservices patterns.
- Hands on development of distributed components using Java, JavaEE, Servlets, EJB, Spring Boot, Spring Data, Spring framework, Hibernate technologies.
- Using mongoDB as data store for User and video (video, feeds, genres etc.) catalog data.
- Redis for caching ready heavy frequently accessed User, VOD catalog and Statistics data. This helped to significantly improve latency and throughput of the application.
- Development of Asynchronous http request handling using Spring AMQP/RabbitMQ.
- OAuth and JWT token based authentication. Integration with partner's authentication mechanisms using tokens.
- Monitoring applications using JConsole, VisualVM etc. Performance and load testing using Apache JMeter.
- Nginx web server for request routing and a cache server to host static web components such as html, js, and image files.
- Integrated Docker into development and deployment process. Some Apps are now distributed as Docker images which are deployed by Test and Ops team.
- Source code management using Git, Bit Bucket.
- Lead the MobileFirst effort where the customers can avail Prodea’s services without the ROS hardware. Customer uses the Mobile App to connect to ROS cloud to consume the services. All the services are provisioned managed from the cloud.
- Software development by agile software development methodologies. Working with the product managers, collecting the requirements, setting up scrum meetings with the team of developers, operations and Test teams.
- Delivered software meeting customer SLAs (scalability, availability, performance).
Android Lead
Confidential
Responsibilities:
- Working with the PM (Product Management) and UI (User Interface) teams to gather requirements and participate in product design discussions.
- Architecture, Design and Development of the Android app. Modularization of the application for code reuse, internationalization and supporting multiple vendors.
- Design and Development of the app using various android technologies such as Fragments, Activities, Preference Activity, Services, Broadcast Receivers, Content Providers, SQLite, and Shared Preferences.
- Implemented GCM (Google Cloud Messaging), Push Notifications and WebSockets.
- Integrating external video players such as ExoPlayer, Octoshape Player. Playing both DRM and Non-DRM content.
- Developed the Home Automation module which included creating Scenes, Triggers, and Events. Added support for devices such as Cameras, Sensors, Switches etc.
Principal Engineer
Confidential
Responsibilities:
- Founding member of ROS server side platform.
- Architecture, Design and development of ROS server side platform.
- Design and development of XMPP components using Jabber XCP server. Thorough understanding of XMPP specification.
- Architecture, design and development of ROS server side components using J2EE technologies like Restlets, JBoss Resteasy, JSP, servlets, EJB, JPA, and Hibernate, JBoss drools, PostgresQL on Tomcat and JBoss servers.
- Performance testing using JProfiler and JBoss Profiler, JConsole, VisualVM.
- Writing Test scripts using Python Programming language.
Lead Developer
Confidential
Responsibilities:
- Design and development of core modules using java based distributed technologies.
- Service Oriented Architecture Implementation via SOAP using J2EE and Axis frameworks.
- Develop and deploy distributed applications on open source software such as JBoss application server and tomcat web server.
- Writing PL/SQL components using Oracle database technologies.
- Performance testing using JProfiler, JConsole, VisualVM
Lead Developer
Confidential
Responsibilities:
- Architecture, design and development using UML methodology.
- Hands on experience in analysis, designing and implementing the various j2ee design patterns and implementing them using tools such as Rational Rose and UML.
- Expertise in development using J2EE technologies like JSP. Servlets, EJB and Web Services.
- Designed and Developed user interfaces using HTML, JSP, Custom Tag Libraries using Struts framework.
Technical Lead
Confidential
Responsibilities:
- Hands on experience on implementation J2EE solutions using design patterns.
- Development of UI components using HTML, JavaScript, JSP, Servlets, custom tag libraries and Struts framework.
- Developed business components using the business tier design patterns and distributed technologies such as EJB, JMS, and Web Services using SOAP and JAX-RPC, SymphonyRPM Analytic Server, Alphablox Analytic App server.
Senior Software Engineer
Confidential
Responsibilities:
- Design and Development using html, servlets, JSP, Oracle 8i, TOAD, PL/SQL, WebLogic application server 6.1.
Senior Engineer
Confidential
Responsibilities:
- Design and Development of different sizing algorithms using JAVA v1.2, JSP, Servlets, Oracle 8.0