8 months ago
Bachelor’s degree in Computer Science (Master’s degree in Computer Science a plus) with 3 to 5 years of software development experience. Must have excellent verbal communication, written communication, and social interaction skills.
The candidate is expected to own application development for major applications across business verticals and manage a team of application developers both onsite and offshore. While managing the application development work across applications the candidate will also manage his/her own deliverables that will include designing, coding, testing and deploying software applications. Determine and identify high-level functional and technical requirements based on interactions with the user community and knowledge of enterprise architecture. Design architectures, including the software, hardware and communications, to support the total requirements, as well as to provide for present and future cross-functional requirements and interfaces.
Interact with project management team to plan project schedules and technical direction. Provide quality assurance review and the evaluation of existing and new software products. Develop high-level system design diagrams for program design, coding, testing, debugging and documentation. Develop and implement moderate to complex web applications on one or more platforms.
Tech Skill Requirements:
* Strong knowledge of Java, including data structures, algorithms, enterprise systems, and asynchronous architectures. 5 + years of experience in Java / Java EE based enterprise applications. Experience with object-oriented design and development skills
* Good understanding of Web Services protocols such as REST, SOAP and API design for extensibility and portability, MQ /JMS messaging
* Experienced with all ancillary technologies necessary for Internet applications: HTTP, TCP/IP, POP/SMTP, etc.
* Experience in high scalability projects involving cloud-based infrastructure design and implementation - AWS (API Gateway, Lambda, SQS, S3, MQ, DynamoDB, RDS, EC2)
* Solid understanding of the Software as a Service (SaaS) model
* Experience with Scrum/Agile development methodologies
* Experience as an applications programmer on large-scale data base management systems.
* Familiarity with infrastructure systems (servers, systems administration, and UNIX/Linux scripting skills) a plus.
* Understanding of networks, firewalls, load balancers and concepts with the ability to provide requirements to infrastructure team as well as provide troubleshooting assistance.
* Experience in handling a small, but global team.
Desired Experience in various IDE and Build Tools:
* Git, Mercurial
* Jira, Confluence, Bitbucket, GitHub