Skills
- Microsoft Message Queuing
- Microsoft Azure
- Microsoft Ssis
- HTC
- UI
- Python
- EEO
- Collaboration
- AngularJS
- Statistics
Job Description
HTC Global Services wants you. Come build new things with us and advance your career. At HTC Global you'll collaborate with experts. You'll join successful teams contributing to our clients' success. You'll work side by side with our clients and have long-term opportunities to advance your career with the latest emerging technologies.
At HTC Global Services our consultants have access to a comprehensive benefits package. Benefits can include Paid-Time-Off, Paid Holidays, 401K matching, Life and Accidental Death Insurance, Short & Long Term Disability Insurance, and a variety of other perks.
Software Engineer III MES
Job Functions:
- Evaluates, designs, and implements projects for controlling and interfacing with the manufacturing processes. This includes designing and developing related data visualization and user input systems, database structures, procedures, and reports.
- Works with the MES architects and controls engineers to ensure solutions integrate seamlessly with the MES hardware and software systems to support enterprise design goals.
- Provides execution system technical knowledge and resources to the MES development team.
- Provides the final level of escalated support for manufacturing execution systems, data architectures, and data collection.
Education and Experience:
- Master s degree in IT, Engineering, or related field with four years of related external work experience or two years of software development experience OR
- Bachelor s degree in IT, Engineering, or related field with six years of of related external work experience or 4 years of software development experience OR
- Associate s degree in IT, Engineering, or related field with eight years of related external work experience or six years of software development experience OR Ten + years of related external work experience or eight years of IT experience.
- 6+ years in either manufacturing systems or on software development teams using Microsoft .NET technologies preferred.
- 2+ years of experience interfacing with manufacturing control systems, shop floor interface/automation systems, programmable logic controllers (PLCs), or OPC data transfer preferred.
- 4+ years experience.
- Developing JavaScript/HTML/CSS in modern front-end framework (Angular or React) preferred.
- Developing Python in Flask or Django preferred.
- Developing efficient data structures in relational databases, MS SQL Server preferred.
Required Skills:
- Demonstrated expertise with manufacturing software architecture and execution systems.
- Strong troubleshooting and programming software solutions skills based on multi-tiered architecture using C#, ASP.NET, JavaScript, T-SQL, and message processing (MSMQ, RabbitMQ, Kafka).
- Proven expertise in designing data structures and using/configuring/querying SQL Server databases.
- Experience interfacing with Allen Bradley Logix PLCs and RSLinx software is preferred.
- Experience with Digital Transformation, Industry 4.0, Vision, AI/ML, Automation is a plus.
- Demonstrated success in integrating manufacturing hardware and 3rd party software systems.
- Experience with Service Fabric is preferred.
- Experience with SQL Server Integration Services (SSIS) is preferred.
- Experience with Angular and AngularJS is preferred.
- Experience with Azure DevOps, Git, YAML, and deploying via Pipelines is preferred.
- Experience in developing, deploying, and supporting Windows mobile applications is a plus.
- Proven Organizational and Project Managerial skills.
- Proven experience with software development life cycle, Agile teams, change management process, and version control packages.
- Excellent understanding of computer operating systems and software applications.
- Excellent understanding of enterprise data systems.
- Logical troubleshooting skills.
- Proven interpersonal communications, including the ability to drive international projects with multinational team members.
- Global experience providing tier three support in a manufacturing environment is a plus.
Primary Responsibilities:
- Evaluate, configure, integrate, and deploy execution system software for controlling manufacturing processes and tool data collection.
- Integrate shop floor systems with custom-developed and off-the-shelf solutions.
- Design and develop data visualization and user input systems for manufacturing and related processes.
- Design and develop database structures and procedures to operate and maintain software systems.
- Responsible for post-deployment hypercare and expert-level support on global applications for manufacturing, database, and related systems.
- Develop software and database applications on a variety of platforms.
- Manage outsourced software development work.
- Ensure good QA standards for software development.
- Manage transitions from the developers (solutions group) to the support group.
- Document recurring issues and present possible solutions.
- Interface with other departments and supplier representatives.
- Exercise effective communications levels and foster team building.
- Adhere to all safety procedures and good housekeeping standards.
Key Competencies:
- Undertakes analytical activities and delivers analysis outputs, in accordance with customer needs and conforming to agreed standards.
- Maintains knowledge of specific technical specialisms provides detailed advice regarding their application and executes specialized tasks. The specialism can be any area of information or communication technology, technique, method, product or application area.
- Contributes to research goals and builds on and refines appropriate outline ideas for the evaluation, development, demonstration and implementation of research. Uses available resources to gain an up-to-date knowledge of any relevant IT field.
- Reports on work carried out and may contribute significant sections of material of publication quality.
- Contributes to research plans and identifies appropriate opportunities for publication and dissemination of research findings.
- Monitors the market to gain knowledge and understanding of currently emerging technologies.
- Identifies new and emerging hardware and software technologies and products based on own area of expertise, assesses their relevance and potential value to the organization, contributes to briefings of staff and management.
- Promotes and ensures use of appropriate techniques, methodologies and tools.
- Applies data analysis, data modeling, and quality assurance techniques, based upon a detailed understanding of business processes, to establish, modify or maintain data structures and associated components (entity descriptions, relationship descriptions, attribute definitions).
- Advises database designers and other application development team members on the details of data structures and associated components.
- Specifies user/system interfaces, and translates logical designs into physical designs taking account of target environment, performance requirements and existing systems. Produces detailed designs and documents all work using required standards, methods and tools, including prototyping tools where appropriate.
- Develops specialist knowledge of database concepts, object and data modeling techniques and design principles.
- Translates object and data models into appropriate database schemas within design constraints.
- Interprets installation standards to meet project needs and produces database components as required.
- Evaluates potential solutions, demonstrating, installing and commissioning selected products.
- Designs, codes, tests, corrects and documents large and/or complex programs and program modifications from supplied specifications using agreed standards and tools, to achieve a well-engineered result.
- Takes part in reviews of own work and leads reviews of colleagues' work.
- Leads Junior Developers, providing instruction and oversight to complete assignments, as well as guidance on proper techniques, best practices, beneficial tooling, design patterns, troubleshooting methodologies, and how best to grow technical capabilities.
- Selects and uses tools and methods to establish, clarify and communicate the user experience, users' characteristics and tasks, and identifies the technical, organizational and physical environment in which complex products or systems will operate.
- Defines the integration build, accepts software modules from software developers, and produces software builds for loading onto the target environment.
- Configures the hardware environment, produces integration test specifications, and conducts tests, recording details of any failures and carrying out fault diagnosis.
- Assesses and analyses release components.
- Provides input to scheduling.
- Carries out the builds and tests in coordination with testers and component specialists maintaining and administering the tools and methods manual or automatic - and ensuring, where possible, information exchange with configuration management.
- Ensures release processes and procedures are maintained.
- Identifies and resolves issues with applications, following agreed procedures. Uses application management software and tools to collect agreed performance statistics.
- Carries out agreed applications maintenance tasks.
- Investigates problems in systems and services.
- Assists with the implementation of agreed remedies and preventative measures.
- Uses appropriate methods and tools in the development, maintenance, control and distribution of quality and environmental standards.
- Makes technical changes to quality and environmental standards according to documented procedures.
- Distributes new and revised standards.