I joined Feed Management Systems, which is a company Cargill acquired in 2010, to help them develop enterprise level software to manage feed mill operations and feed recipe formulation. My initial work required rapidly learning their internal development platform and the 3rd party Modularis Accelerator Platform. My contributions helped turn around a struggling project that was adding new cost functionality to their existing Pennet Mill Manager product. I then became a lead developer on a 10-month project to upgrade Brill, their feed formulation product, using .NET on top of their internal development platform. This project involved revamping the C# and WinForms-based platform to use the MVP design pattern with mediators as the communication framework. In my role at FMS routinely mentor other developers, openly share my ideas for feedback, and always look for ways to increase the impact I can have on the organization. My contributions were recognized in the summer of 2014 when I received the company-wide FMS “All Star” award. This award is given to one person each year within FMS, requires a nomination by your peers to be eligible, and is ultimately chosen by the FMS leadership team.
In this role I helped a specific Cargill business unit prepare their Material Master data for an upcoming SAP implementation. I focus on developing efficient tools and processes to make data management easier and cheaper. I have expanded the .NET/WPF data conversion tool I created in my previous role to include functions like duplicating legacy materials, and examining various aspects of SAP material data (class & characteristics, units of measure, plant extensions, etc).
This role has given me more perspective on how a customer of Tartan experiences the project, and is helping me focus my skills more effectively to meet their needs.
This role in Tartan allowed me to positively impact the organization in many ways. I initially led the effort to identify the toolset used for converting data from legacy systems in future Tartan projects. I then developed the strategy for how our server infrastructure would be used first for Wave 3, and now for multiple Tartan projects executing concurrently. I then designed and implemented an application, written in .NET/WPF, that can be used to meet other needs of Tartan’s data conversion work. This work involved balancing my vision around using new technology effectively with meeting the day-to-day needs of my team.
Within Tartan I routinely provided technical support to my peers for different issues and technologies, including a team of contractors working in India. I also had the opportunity to influence other teams through candid conversations about their accountability around the services they provide. This required discussions with people both at, and above, my level in the organization to find ways to partner more effectively. This role enabled me to demonstrate my abilities around critical thinking, communicating effectively to a multiple levels of the organization, collaborating with multiple teams to achieve objectives, turning setbacks into opportunities, and proactively identifying and solving problems.
As a supervisor in Grain IT I built upon my experience as a team lead and increased my responsibilities to around 18 staff, including two team leads being groomed for a supervisor role. I played a key role in identifying talent to fill some open positions on my teams, which will have a long lasting impact on Cargill. I continued to lead change by pursuing effective work planning in all parts of Grain IT, and to an IT organization located in Canada. This work planning helped Grain IT understand and increase its capacity, while helping us meet the commitments we were making to our customers. I increased the culture of innovation by pushing my DBA team to build a software framework to automatically manage our database accounts for all teams within Grain IT. This reduced the work effort required to remain compliant with Cargill’s password policies, and provided a working example of how collaboration within Grain IT can solve problems and increase our execution capacity.
A major accomplishment in this role was the creation and execution of a broader strategy to further improve the efficiency and capabilities provided by my two teams. This effort involved inspiring my team to take ownership of many long-standing issues, seek out new skills and tools, and find innovative ways to fix those issues. This required me to operate with a broader perspective on the issues, seek to understand the needs of multiple stakeholders, and remove obstacles preventing my team from making the desired changes. I also partnered with our business customers to uncover and fix some serious data issues in the Sales Management Process application, which was used to track sales and determine incentives for sales staff. This effort required a candid and transparent approach from my team to ensure the business understood the issues and felt confident we were taking the right steps to correct them.
As a team lead in Grain IT I continued my efforts to change the culture of the DBA team. In my role I provided work planning and strategy for my DBA team, helped identify new talent by interviewing prospective candidates, and provided coaching and technical expertise to both my team and others within Grain IT. These experiences let me better understand the needs of Grain IT, and find innovative ways for the DBA team to help meet them. One example was making large strides to increase the transparency, communication and collaboration between my team and others both inside and outside of Grain IT. A major accomplishment for me was leading an 8-month project to upgrade our systems from ASE 12.5 on HP to ASE 15.0.3 on AIX on time. A second major accomplishment was working with Sybase, our database vendor, over a 12 month period to simplify our database licensing to ensure we were compliant and that the licensing was easier to understand for future supervisors within Grain IT.
As a DBA in Grain IT I was responsible for maintaining a replicated database environment composed of 100+ servers running Sybase ASE and Replication Server. In this role I identified many opportunities to make my team more efficient and increase the capabilities of my team. I worked with my teammates to create new tools and processes, and was able to increase the agility and capacity of the DBA team while also reducing the time required to maintain the environment. I routinely demonstrated ways to change how we work, with the goal to push my team to be more proactive in fixing the root cause of issues instead of 'fire fighting'.
In my last 18 months at Rosemount I was a supervisor for two employees, with a third scheduled to start after I decided to join Cargill. In this role I was responsible for providing work direction, hiring staff and conducting salary and performance reviews. I also had experience coaching underperformers to raise the execution capacity of my team. Because of the size of my team, I spent a sizable portion of my time as an individual contributor despite my additional supervision responsibilities. This provided good experience managing multiple priorities and executing in different capacities depending on the situation.
As a software engineer I led the development of several applications that improved the manufacturing process. Most work was done with C# and VB 6, but I also developed a PHP intranet site providing engineers with a tool suite for accessing production data through a web interface. I also took a lead role in improving software development practices by using Microsoft’s Team Foundation Server to implement a modified CMMI process. As a database administrator I helped build and maintain a replicated Sybase database backend that supported a large-scale manufacturing plant in the US and Beijing, China. My responsibilities included both the server infrastructure and the administration of Sybase ASE and Replication Server.
In my second year of graduate school I was awarded a research assistant position. In my research I pioneered techniques to dynamically adapt computationally intensive distributed applications. The results included two conference accepted papers, my graduate thesis, and a C++ library that uses XML, STL and a multi-threaded design to dynamically adapt high performance applications at run-time.
I was again an intern with PTD during the summer of 2003. This rotation proved to be much more challenging, and also rewarding, than the previous summer. I focused on writing everything from utilities to help with populating databases, to revamping VB programs, to creating an evaluation edition of the AMS software package. I also helped with consolidating the massive codebase previously developed seperately for the HART and Fieldbus portions of AMS.
During my first year of graduate school I was awarded a teaching assistant position. In this role I designed and conducted laboratory sessions, graded homework and exams, and helped students with any concerns for both a Computer Networks and Computer Architecture course.
My first experience with actual software development was an intern rotation with Emerson's Performance Technologies Division during my first year of grad school.