JOB TITLE: Senior Software Engineer
DEPARTMENT: Technical Services /Systems Integration
REPORTS TO: Technical Services Manager
This job description in no way states or implies that these are the only duties to be performed by the employee in this position. Employee will be required to follow any other job-related instructions and to perform any other job-related duties requested by any person authorized to give instructions or assignments.
Essential Duties and Responsibilities:
• As Sr. Software Engineer in projects, responsible for leading a development, providing the required technical guidance to ensure software deliverables are completed on time and on budget.
• Create Technical Specifications that corresponds to the Functional Specifications written by the Business Analyst and serve as technical advisers to developers providing the necessary guidance on the requirements.
• Effectively work with Implementation Manager(s) in estimating, planning, prioritizing and execution of assigned tasks within project deadlines
• Review and understand Application user interface and integration for Manufacturing Execution System (MES) processes and the ability to discuss its benefits with customers.
• Implement custom implementations based upon written technical specifications.
• Ability to perform peer code reviews ensuring programming standards are adhered to.
• Validating software configurations by thoroughly testing the application.
• Requires experience in manufacturing processes, information systems and system implementation methodologies.
• Works in a team environment to discover requirements, design and solution for the customer.
• Developing effective, maintainable code on time
• Working with product specialists and team lead to create accurate level of effort estimates and schedules
• Designing, coding, and testing new features • Performing software maintenance and bug fixes
• Customize messaging system exchanging XML data through queues and middleware
• Understand application schema logical and physical models
• Resolve software issues in terms of functionality, usability, performance
• Support team of developers onshore/offshore for customers’ enhancements or implementation.
• Develop and implement systems interfaces, application configurations, specific customizations, data load, data migration and application upgrade for assigned projects, as required by project requirements.
• Bachelor’s degree in a technical or business discipline; or equivalent
• Minimum of 6-8 years’ experience in software development is required
• Proficient knowledge of Java, advance Java, Spring, Hibernate, Maven, Junit, Subversion, Git, Database (Oracle and SQL Server), PLSQL/TSQL, Jira, Wiki, XML, XSLT, JEE, JMS Tomcat/ActiveMQ, etc…
• Proficient knowledge of accessing and using the Internet and MS Office tools, knowledge of computer systems functions, tools and software such as Windows, Webex, etc…
• Experience in the manufacturing industry specifically in the area of Process Planning (PP), Manufacturing Execution (MES), Quality Assurance (QA), Supplier Quality (SQA) and Maintenance and Overhaul (MRO) is a plus.
• Excellent analytical and problem solving skills
• Excellent communication and customer relations skills, both written and oral
• Availability to travel outside the home city as need
• Knowledge of test-driven development (TDD) principles, practices, frameworks, and tools is a plus
Physical Requirements / Work Environment:
• Regularly required to stand or sit, reach, bend and move about the facility
• May require some light physical effort
• Usual office working conditions •