No of Positions: 2
Tentative Start Date: May 16, 2022
Work From : Offsite
Rate : $ 12 - 14 (Hourly)
Experience : 5 to 7 Year
Job Title: Senior Software Engineer
A Senior software development expert who writes highly maintainable code and recommends good software coding standards, practices, tools, and platforms. In addition, he/she will be working closely with business analysts and technical teams to specify and develop our highly configurable application. The position requires the ability to develop complex Java EE applications, develop core application framework components, and review other developers' work. The candidate is expected of delivering high-performance, multi-tier, multi-threaded clustered software solutions, write clean & well-tested code and advocate for best practices and exceptional quality.
• Must have experience in developing multi-tier enterprise systems with Java, advanced Java, Spring, Hibernate, Maven, JUnit, and Mockito.
• Experience with Web infrastructures such as Tomcat, JBoss, and WebSphere.
• Should be proficient in back-end technologies and willing to work on front-end technologies when needed.
• Experience with REST API development
• Experience in modern Java programming best practices for object orientation, dependency injection, thread concurrency, performance tuning, and as well as test-driven development for unit and integration testing.
• Ability to write complex SQL queries and efficiently retrieve data from a database, especially Oracle, and Microsoft SQL Server.
• Experience with open sources JMS implementation such as Apache ActiveMQ and open sources Enterprise Bus Service Application such as Apache Camel, JBoss Fuse, and Mule is a plus.
• Experience and understanding of source code management tools such as GIT and SVN.
• Good Knowledge of developing scripts in Program evaluation and review technique (PERT) & Unix shell is a plus.
• Ability to analyze requirements and user stories thoroughly, ask good, clarifying questions and deliver in a timely manner and construct good solutions.
• Ability to learn a large, complex codebase and be a productive team member.
• Ability to work collaboratively on an Agile team with shared goals.
• Analyzes, designs, coordinates, and supervises the development of software
• Drive for continuous improvement and skills development.
• Work as a mentor to junior software engineers & guide team member
• Contribute to various initiatives beyond the scope of your project team
• Must have excellent communication skills, both verbal and written. Can clearly communicate key points with a variety of audiences – both technical and non-technical – including executive staff, sales personnel, partner organizations, end customers, product management, development engineering, and quality assurance.
• Proficiency in English communication is required.
• Ability to analyze and profile system performance and then design and implement substantial performance improvements.
• Experience developing software in an Agile Scrum environment. Scrum Master certification or experience is a bonus.
• Knowledge of test-driven development (TDD) principles, practices, frameworks, and tools.
• Experience with distributed software teams.
• Knowledge of Node.js and front-end technologies such as jQuery, Angular, React, Redux, Flux and Elasticsearch is a plus
• Bachelor's higher-level degree in Computer / IT/ MCA is necessary with minimum good academic background.