About the job
Description
Title: Software Engineer
Software Engineer is responsible for delivering applications for an international, talented and agile development team that is building the core backend components of our system. Ideal candidate will have a proven history of designing and implementing highly scalable, fault-tolerant distributed systems, mentoring other developers and contributing to our next generation microservice platform.
Responsibilities:
Hands-on expertise in many disparate technologies, focused on back-end systems and all points in between, Execute complex technical projects. Document and communicate designs, estimates, and implementation plans to program stakeholders, Serve as a source of technical expertise to project teams, Research, design, test, and evaluate new technologies and vendor solutions.
- Consistently demonstrate VS enterprise and functional competencies.
- Execute for Results
- Innovate and Reinvent
- Collaborate, be Fast & Agile
- Website support activities: (not all inclusive)
- Responsible for the configuration and management of complex environments that includes multiple platforms.
- Participation in rotational 24x7 on call support activities
- Triage and resolution of recurring problems
- Creation of detailed technical documentation
- Leadership and Teaming: (not all inclusive)
- Participate in evaluation and selection of new technologies from initial idea through standardization.
- Identifies and drives continuous improvement initiatives, streamlining work and improving support.
- Identifies and implements opportunities for innovation and process improvement.
- Customer Interaction skills: (not all inclusive)
- Ability to communicate complex technical concepts to a non-technical audience
- Builds and maintains strong partnership with internal and external customers/vendors.
- Prepare and communicate status, issues, and opportunities to the business.
Qualifications
Qualifications:
- 4 year degree in Information Systems or an equivalent combination of course work and job experience
- Flexibility is a must to support our customers 24x7x365, where extended hours may be necessary
- At a minimum the below experience:
- 3+ years of Experience multiple JVM based languages
- 1+ year experience in Golang
- Successful track record in solution development and delivery
- Excellent software design and system architecture skills.
- Strong background with multi-threading, event-based software architecture
- Strong background in distributed systems.
- Strong background in asynchronous patterns and multithreaded programming.
- Experience developing REST based web services
- Good knowledge of NoSQL db’s like Mongo and Couch
- Knowledge and experience on microservice architecture
- Strong knowledge of Agile development methodology, Test Driven Development, Continuous Integration, and Test Automation
- Outstanding communication skills, both oral and written
Good To Have:
- Experience designing, developing and deploying Microservices to either in-house or cloud architecture
- Experience using In-memory data grids