Categories: work » ibm

RSS - Atom - Subscribe via email

Analyzing my Lotus Notes sent mail since January 2011

| analysis, ibm, lotus

Today is my penultimate day at IBM! Having successfully turned my projects over to another developer (hooray for the habit of organizing project-related files in Lotus Connections Activities), I’ve been focusing on getting things ready for the traditional goodbye e-mail, which I plan to send tomorrow.

I dug around in the Lotus Connections Profiles API to see if I could get a list of my contacts’ e-mail addresses. I fixed a small bug in the feed exporter of the Community Toolkit (w4.ibm.com/community for people in the IBM intranet) and exported my contacts, giving me a list of 530 IBMers who had accepted or sent me an invitation to connect.

Not everyone participates in that Web 2.0 network, though, so I wanted to analyze my sent mail to identify other people to whom I should send a note. I couldn’t find a neat LotusScript to do the job, and I couldn’t get the NSF to EML or mbox converter to work. Because I didn’t need all the information, just the recipients, subjects, and times, I wrote my own script (included at the end of this blog post).

I used the script to summarize the messages in my sent mail folder, and crunched the numbers using PivotTables in Microsoft Excel. I worked with monthly batches so that it was easier to find and fix errors. I decided to analyze all the mail going back to the beginning of last year in order to identify the people I mailed the most frequently, and to come up with some easy statistics as well.

image

Spiky around project starts/ends, I’d guess.

image

I wanted to see which roles I tended to e-mail often, so I categorized each recipient with their role. I distinguished between people I’d worked with directly on projects (coworkers) and people who worked with IBM but with whom I didn’t work on a project (colleagues). The numbers below count individual recipients.

Role

Number of people

Number of individual
e-mails sent

Average e-mails sent
per person

colleague 407 827 2.0
coworker 50 562 11.2
client 21 387 18.4
manager 4 109 27.3
partner 9 51 5.7
system 9 21 2.3
other 8 11 1.4
self 1 5 5.0
Grand Total 509 1973 3.9

As it turns out, I sent a lot of mail to a lot of people throughout IBM, mostly in response to questions about Lotus Connections, Idea Labs, or collaboration tools.

Now I can sort my summarized data to see whom I e-mailed the most often, and add more names to my don’t-forget-to-say-goodbye list. If all goes well, I might even be able to use that mail merge script. =)

The following agent processes selected messages and creates a table with one row per recipient, e-mailing the results to the specified mail address. It seems to choke on calendar entries and other weird documents, but if you go through your sent mail box in batches (Search This View by date is handy), then you should be able to find and delete the offending entries.

Option Public
Dim TempNitem As NotesItem
Dim TempNm As NotesName
Dim session As  NotesSession
Dim db As NotesDatabase
Sub Initialize
	mailAddress = "YOUR_ADDRESS@HERE"
	
	Dim ws As New NotesUIWorkspace
	Dim uidoc As NotesUIDocument
	Dim partno As String
	Dim db As NotesDatabase
	Dim view As NotesView
	Dim doc As NotesDocument
	Dim collection As NotesDocumentCollection
	Dim memo As NotesDocument
	Dim body As NotesRichTextItem
	Dim range As NotesRichTextRange
	Dim count As Integer
	
	Set session = New NotesSession
	Set db = session.CurrentDatabase
	Set collection = db.UnprocessedDocuments
	
	Dim FldTitles(3) As String
	FldTitles(0) = "E-mail"
	FldTitles(1) = "Subject"
	FldTitles(2) = "Date sent"
	
	Set maildoc = db.CreateDocument
	maildoc.Form = "Memo"
	maildoc.Subject = "Summary"
	maildoc.SendTo = mailAddress
	Dim ritem As NotesRichTextItem
	Set ritem=New NotesRichTextItem(maildoc,"body") 
' passing the rich text item & other relevant details
	Set ritem = CreateTable(FldTitles, collection, ritem, "Sent items", "Summary created on " + Format(Now, "YYYY-MM-DD"))
	maildoc.send(False)
End Sub
Function CreateTable(FldTitles As Variant, doccoll  As NotesDocumentCollection, rtitem As NotesRichTextItem,msgTitle As String,msgBody As String ) As NotesRichTextItem
	'http://searchdomino.techtarget.com/tip/0,289483,sid4_gci1254682_mem1,00.html
	'Takes  Documentcollection & creates tabular information on to the passed   rtitem (rich text item)
	
	Set ritem=rtitem
	Set rtnav = ritem.CreateNavigator
	Set rstyle=session.CreateRichTextStyle 
	
	'===================================================
	'heading in the body section of the mail
	rstyle.Bold=True
	rstyle.NotesColor=COLOR_RED 
	rstyle.Underline=True
	rstyle.NotesFont=FONT_COURIER
	rstyle.FontSize=12
	Call  ritem.AppendStyle(rstyle)
	ritem.AppendText(msgTitle)
	
	rstyle.Underline=False
	rstyle.NotesColor=COLOR_BLACK
	ritem.AddNewline(2)
	
	rstyle.FontSize=10
	rstyle.Bold=False
	rstyle.NotesColor=COLOR_BLACK
	Call  ritem.AppendStyle(rstyle) 
	ritem.AppendText(msgBody)
	ritem.AddNewline(1)
	
	'===================================================
	rows=doccoll.Count +1
	cols=CInt(UBound(FldTitles)) 
	
	Call ritem.AppendTable(1, cols)
	Dim rtt As NotesRichTextTable
	Call rtnav.FindFirstElement(RTELEM_TYPE_TABLE)
	Set rtt = rtNav.GetElement 
	'=================================================
	'heading of the table
	rstyle.Bold=True
	rstyle.NotesColor=COLOR_BLUE 
	rstyle.FontSize=10
	Call  ritem.AppendStyle(rstyle)
	
	For i=0 To UBound(FldTitles) - 1
		Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
		Call ritem.BeginInsert(rtnav) 
		Call ritem.AppendText(FldTitles(i))
		Call ritem.EndInsert
	Next
	
	'=================================================
	rstyle.FontSize=10
	rstyle.Bold=False
	rstyle.NotesColor=COLOR_BLACK
	Call  ritem.AppendStyle(rstyle)
	Dim count As Integer
	count = 0
	Set  doc=doccoll.GetFirstDocument
	While Not (doc Is Nothing)
		subject = doc.GetFirstItem("Subject").values(0)
		posted = doc.GetFirstItem("PostedDate").values(0)
		Set sendTo = doc.getFirstItem("SendTo")
		For i = 0 To UBound(sendTo.values)
			Call rtt.AddRow(1)
			Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)   
			Call ritem.BeginInsert(rtnav)
			ritem.appendText(sendTo.values(i))
			Call ritem.EndInsert
			Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)   
			Call ritem.BeginInsert(rtnav)
			ritem.appendText(subject)
			Call ritem.EndInsert
			Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)   
			Call ritem.BeginInsert(rtnav)
			ritem.appendText(posted)
			Call ritem.EndInsert
		Next   
		count = count + 1
		Set doc=doccoll.GetNextDocument(doc)
	Wend
	Set CreateTable=ritem
	MsgBox "E-mails summarized: " & count	
End Function

I find it helpful to save it as the "Summarize Recipients" agent and assign it to a toolbar button that runs @Command([RunAgent]; "Summarize Recipients").

Estimating the impact of the Community Toolkit, or how the company got an incredibly good deal when they hired me ;)

| ibm, work

Numbers are good to have when you’re thinking about the differences you’ve made. Let’s see if I can estimate the impact of the community toolkit that I built for Lotus Connections: newsletter, metrics, exports, OPML generator, and so on.

Some metrics from the logs: The web interface has been accessed 94,095 since November 13, 2011, the oldest entry in the web server logs. That was 94 days ago, which means that it’s accessed a thousand times a day on average. Let’s ignore all the page views, and just focus on the times when users submitted an actual request to the system. That leaves us with 10,814 entries in the log.

5,305 entries were for Feedmagic, the RSS embed wrapper I created for another widget. Let’s say that saves people 2 minutes each, because otherwise they would have to click through to the feed itself and then return to their page after reading. That’s around 10,600 minutes saved. Considering that part of the tool took me less than an hour to write, I think that’s great ROI.

1,973 entries retrieved statistics for a community. Let’s say that 80% of them were successful, to account for typos and attempts to gather data for private communities. Manually gathering this information would involve going to each of the components of a community, counting discussion threads and comments, counting blog posts and comments, listing files. For some of the hidden data like wiki views, it would also involve accessing the API. There’s a date filter, so manually recreating this would actually involve checking each item to see when it was posted. Let’s say that takes 1-2 hours of work, maybe 1.5 hours on average. That’s around 142,000 minutes saved.

1,730 entries were for the profile summary. This searched Lotus Connections Profiles for combinations of tags and displayed the counts for each of them. For example, if you used A, B, and C as rows and X and Y as columns, the tool searched for A&X, A&Y, B&X, B&Y, C&X, and C&Y. Each total was linked to the search. People searched for a lot of different combinations. You could duplicate this by manually creating lots of links to searches, which would probably take 10-20 minutes depending on how many specs you were looking for. You wouldn’t have the totals, though, and it would probably take another 10 minutes each time to tally things up. If you were just interested in finding an expert using the search, let’s say it saves you 2 minutes of figuring out how to search the system yourself. I’m going to go with a time savings estimate of 5 minutes per request, which balances how people were using it for creating pages, making reports, and simplifying search. That’s 8,600 minutes.

877 entries were for community newsletters. Again, let’s assume 80% were successful. It takes even more work to create a newsletter, because you have to create links and count up new replies. Let’s say that’s 2-3 hours of work, or 2.5 for our estimate. That’s around 105,000 minutes saved.

421 entries were for community data export, which is also handy for determining individual member contribution, wiki page views, and file downloads. Let’s assume that 80% succeeded. This takes a lot of effort as well, because you have to tally contributions by member and copy all the details. I’d say that would take 4+ hours for an community, and you would save that effort for the rare occasions when you wanted to recognize people for their individual activities or justify your investment into building the community wiki. That’s probably at least 80,800 minutes there.

102 requests were for a generic feed export. You could do this manually by going through all the pages in the feed and copying the information, filtering by date. Let’s say that would’ve taken 20 minutes. Assuming 80% success, that’s around 1,600 minutes.

98 requests were for the code to create the feed embedder. You could duplicate this by creating your own page that included the feed embedder information, but that would probably have taken people 10 minutes to figure out. That’s around 1,000 minutes.

56 entries were for the forum exporter. This made it easier for people to analyze community discussions by copying the information into a spreadsheet with the subject, the body, and the author. You could duplicate this by opening each page of each discussion and copying the results into a spreadsheet or document, so I’d say this saved people an hour on average. Assuming 80% of the requests succeeded, that saved around 2,700 minutes.

55 entries were for community OPML, to make it easier for people to subscribe to different community feeds. You could do this manually by substituting the community ID into a template, although the OPML tool was neat because it provided an importable file as well as HTML links. I’d say this saved people 20 minutes. Assuming 80% success, that’s around 880 minutes.

9 entries were for a blog exporter. You could do this manually by copying and pasting all the entries into a document, so I’d say this saved people 10 minutes because most blogs don’t have a ton of entries. Assuming 80% success, that’s around 70 minutes.

There were a number of other requests, too, but we’ll ignore them for this analysis.

Over the 94-day span, then, this tool might have helped save 354,000 minutes. That’s about 3,800 minutes a day, or 2.6 days, or almost 8 8-hour workdays saved every day. Considering that my main focus is client projects and this was a voluntary effort squeezed into the gaps of billable projects, that’s pretty darn cool. This estimate doesn’t take into account the command-line use of the tool for restricted communities or external communities, either.

The tool’s been around for longer than just the three months that we’ve been looking at.  My first blog post about it was in June 2010, when Marty Moore mocked up a web interface and people started asking me to put the command-line tool on the web. That probably meant that I’d been gradually building it and sharing it over the past few months, and it had gotten popular enough for people to ask for a less techie interface than a command-line.

Let’s say the tool linearly built up in value over the 607 days since that blog post, eventually getting to this point where it saved people around 3,800 minutes per day. That means the value is described by a line with the equation y = mx + b. To simplify, we’ll assume that the tool started with 0 value, although it was already used by others on June 18, 2010, and that it eventually gets to 3,800 minutes per day on February 15, 2012. This would have been a great to break out calculus and integrals in order to get the number of minutes under this function (and we probably would, if we were assuming growth was curved or something like that). But it’s just as easy to think of this as a triangle with a width of 607 days and a height of 3,800 minutes/day. The area of this triangle would approximate the total number of minutes saved over the tool’s web-based lifetime, assuming linear growth for simplicity (as more people found out about the tool, and as I added new features). The area of a triangle is 1/2 * base * height, so that gives me 1,153,000 estimated minutes saved over the past 607 days.

I joined IBM on October 15, 2007, and I will leave on February 17, 2012. This is 4 years, 4 months, and 3 days, or approximately 226 weeks rounded down. Let’s say only 90% of those weeks are actually work weeks (holidays, vacations, etc). Eight hours a day, five days a week, for 203 weeks or so – that means that when I leave, I’ll have worked for IBM around 480,000 minutes. The vast majority of those minutes have on client projects. (Ah, the life of a consultant with utilization metrics…) So yeah, net benefit to IBM, which is great.

That one set of tools, which I built in my spare time to save me and other people from repetitive work and to open up new possibilities for communities – that may have saved people more time than I have even worked myself. That’s the amazing thing about intrapreneurship. By breaking the relationship between time and value, you can scale beyond the number of hours you can physically work. The tool probably took me less than a month of development time, spread out over e-mail requests and lunch breaks and calls. Granted, people would probably not have run those reports or crunched those numbers if the tool wasn’t available. But hey, the tool is there, and I’m glad it made these things possible.

I never received any direct monetary compensation for creating the tool. (Oh, wait, there was that Best of IBM award!) The steady stream of thank-you notes came in very handy during performance reviews (and subsequent bonuses =) ). The best benefit from intrapreneurship was meeting a lot of wonderful people throughout IBM and seeing what they did with their communities thanks to the tool.

Special thanks go to Luis Benitez, who’s taking over as the primary contact and who put together the Lotus Notes plugin; Marty Moore and Stephan Wissel, who contributed spiffy designs; Robi Brunner, whose hosting and domain gave it a lot of credibility; John Handy-Bosma and John Rooney, who helped me figure things out with the CIO; Darrel Rader, for suggesting plenty of nifty tools and using them to make his communities smarter; and lots of people throughout IBM for suggestions, improvements, and even the occasional bugfix.

If you haven’t started yet – be an intrapreneur! If you’ve gone down that wonderful road: Have you made something valuable? Can you estimate your ROI?

If my math is wrong or if it looks funny, please help me make it better!

Five things I’ve learned from five awesome years at IBM

| career, ibm, learning, tips, work

I was going to write stories from my five years at IBM (one year as a graduate student, four as an IBM consultant) while they were still fresh in my memory. Then I realized I was on page 8 of a single-spaced document and I was still covering the first year. Instead of writing my way through it, I’ll share the five key things I learned during my adventure with IBM.

Happiness, meaning, and career growth are your responsibilities.

Don’t count on people to tell you why your work is meaningful or to arrange your career so that you’re happy. Do that yourself. Make your own vision and set yourself up for your own happiness and success. There will always be plenty of reasons to feel stressed or unhappy about work. Why not focus on what you could do to improve things instead?

As the financial crisis unfolded in 2008, the mood was decidedly down. Clients were tightening their budgets. Layoffs meant seeing friends scrambling for work despite their talents and skills.

I figured things would happen however they happened. I could either be demoralized by it, or I could focus on the things I could control. I learned more about consulting and development, and I had a wonderful year. (Okay, after I got through my disappointment about great people getting laid off…)

Work sustainably.

Fatigue and sleep deprivation lead to mistakes and lower productivity, and the personal sacrifices are too high. Work at a sustainable pace. If your work requires intense sprints, make sure you don’t forget to rest.

From the beginning, I knew I didn’t want to burn myself out working 80-hour weeks. Although the occasional business trip involved longer hours, for the most part, I kept to the time I budgeted for work. This forced me to focus when I was at work, and to find ways to work more effectively. It also meant I gave feedback on estimates early, so that we could avoid having projects run behind schedule because of unrealistic planning. Result: less stress and more happiness.

Ask for help.

One of the best things about working with a large company is being able to work with people who are great at what they do. Sometimes you have to find creative ways to compensate or thank people for the time they invest in helping you. A thank-you note that includes their manager is an excellent way to start.

I was working on a client project when I ran into a problem that I didn’t know how to solve. It involved Microsoft SQL Server 2000, something I had never administered before. I tried searching the Internet for tips, but I knew I was missing things I didn’t even know to look for. After some delay, we eventually found an expert who could review my work, we brought him into the project, and he billed much less time than it would have taken me to learn things from scratch.

Practise relentless improvement.

Always look for small ways you can work more effectively. Invest time into learning your tools. If you can improve by 0.25% every day, you’ll double your productivity in less than a year.

Working with other people in an IBM location is an excellent way to learn by watching how other people do things. Attending community conference calls is another way to do that, too. Experiment with techniques yourself, and share what you learn.

Look for scalable ways to make a difference. Intrapreneurship is worth it.

Find yourself doing something repetitive? Solving problems other people might run into? Save yourself time, and save other people time as well. If you write about what you’re doing – or better yet, build a tool that does it for you – then you can share that with other people and create lots of value.

I started playing around with intrapreneurship through blogging and presentations. I was learning a lot, so I took notes and proposed presentations to conferences. Many of my proposals got accepted. This is how I got to go to the IBM Technical Leadership Exchange as a presenter in my first year as an IBM employee. Presenting helped me share what I’d learned with dozens of people at the same time, and uploading the presentations helped me share with hundreds and even thousands over the years.

I like building tools, too. I wrote something to make it easier for me to export data from Lotus Connections communities. This grew into the Community Toolkit that many people use to create newsletters or measure activity in their communities. I wrote a script for doing mail merge in Lotus Notes, and that became popular as well. This resulted in a steady stream of thank-you notes from people across IBM (and even outside the company), which came in really handy during annual performance reviews.

What have you been learning at work?

Pre-experiment potluck

Posted: - Modified: | career, ibm, work

Today was my pre-experiment potluck, organized by Jennifer Nolan. I brought cookies, she brought cupcakes (which she had frosted with flowers), and other coworkers brought food. A few former IBMers made it in, too, and it was great to reconnect with them. Another milestone in my separation from IBM and adventure into entrepreneurship!

When we were planning this, Jen suggested a potluck (more chatting – great idea!). I suggested that we call it a pre-experiment potluck instead of a goodbye lunch. I like the positive approach to the idea. IBM’s been wonderful, and now I want to experiment with ways to build value. Consulting and coding are cool. What else is out there? Hence, experiment!

Anyway, I spent the rest of the afternoon on a bit of a sugar buzz. =)

Five days to go before I start the next chapter in my life. I’ve been braindumping Drupal development and theming tips on Regan Yuen, who’s taking over one of my projects (and maybe another). In the gaps between questions, I write stories I remember from work, post testimonials on LinkedIn, and tidy up whatever else I can before I leave.

It turns out that leaving isn’t actually that scary. =)

Notes from my exit interview with IBM

Posted: - Modified: | career, ibm, work

I had my exit interview yesterday. It was more of a follow-up, as I had found a list of common exit interview questions, drafted a blog post with my answers, and sent it to Joyce Wan (my interviewer) to see if there was anything sensitive that I shouldn’t share. She was amazed by the feedback. After consulting with the HR partner, she told me that I could definitely share it with my manager, and it was up to my discretion whether I shared it on my blog.

The exit interview was straightforward. Joyce had mapped my e-mailed answers onto the standard questionnaire, so we spent the time on follow-up questions and other things I hadn’t covered. She thanked me for the honesty of my feedback and reassured me that whatever she would keep whatever I said confidential. I told her about what an awesome time I’ve had at IBM, and that it was okay to share my feedback.

There were a few questions about compensation. I told Joyce that I was happy with what I had earned at IBM, and the intangible value of working with the company was amazing. Besides, compared with the median salaries for people my age in Canada, in one of the toughest times in recent history… we did pretty darn well. We chatted about my plans, her own experience of leaving and returning to the company, and about the steps in separation.

Here are my answers to typical exit interview questions, fleshed out some more.

1. Why have you decided to leave the company?

(My “elevator summary” of why I want to leave: I want to experiment with entrepreneurship pre-kids rather than post-kids. At this, every person I talk to nods and tells me it’s an excellent idea.)

I want to experiment with business. I’ve read so much about entrepreneurship and freelancing. I’ve talked to so many people about their experiences. Over the past four years, I’ve applied many ideas I’ve learned inside the company. I’ve looked for internal ways to create scalable value, like the Community Toolkit. I’ve loved the rewards of thanks, recognition, ideas, and mentorship that I’ve received from people all over IBM. I want to see if I can create similar value outside.

2. Have you shared your concerns with anyone in the company prior to deciding to leave?

I love learning from people, and I’ve talked to many people both inside and outside the company. I was concerned about possibly reintegrating into IBM, but I talked to people who had joined or rejoined IBM after other jobs and even other careers, and they had good experiences to share. I was concerned about my ability to make it in the marketplace, but mentors and potential clients reassured me that my skills were much needed.

My main concern now is how to gracefully transition both my work responsibilities and all the wonderful things I’ve had the privilege of helping with at IBM – community toolkits and comics, analyses and initiatives.

3. Was a single event responsible for your decision to leave?

No. I’ve been interested in entrepreneurship and freelancing since I was in school. I also really loved the scale at which we get to work at IBM, and the wonderful learning opportunities it offers. The main reason I’m planning to experiment with entrepreneurship now instead of staying with IBM is that it’s easier to experiment with that before we have young children instead of after.

4. What does your new company offer that encouraged you to accept their offer and leave this company?

The chance to have my own company, to build things and fail and learn from them, and to do so with reasonable risks.

5. What do you value about the company?

I love what we work on at IBM and why we work on it. I’m constantly amazed at this living, breathing organization that works around the world to help our clients make their customers’ lives better. This is a company that helped put men on the moon. IBM invented so many things that transformed business.

I love the scale at which we work. I love the fact that I can help out with things that touch hundreds or thousands of people’s lives inside the company. I love the fact that we can work with all these big companies that touch millions of people.

I love the people we get to work with at IBM. I love the way you can find an expert on just about anything, and that you see people of so many walks of life and so many stages in their career. I love the gender balance and not feeling like I’m the only woman in the room. I love the way I’m surrounded by role models and inspiration, and that mentorship helps me reach for things beyond my grasp.

6. What did you dislike about the company?

I wish I could be in more than one place at the same time. There are lots of interesting opportunities, and I can’t help with all of them. But that’s not IBM, though, that’s me!

7. The quality of supervision is important to most people at work. Are you satisfied with the way you were supervised?

I have gotten along very well with both of my managers and with the rest of the management hierarchy. Both Robert Terpstra and Ted Tritchew have been great advocates, helping me navigate IBM and make the most of the opportunities here.

I have a deep respect for the managers, project managers, team leaders, and resource deployment managers with whom I’ve had the pleasure to work. They’ve helped keep a lot of potential headaches out of my way. They sometimes have to balance many conflicting demands, and I think they’ve done a good job at it.

8. Is there anything we can do to improve our management style and skill?

It would be fascinating to see how we can further streamline the miscellaneous work managers need to do. If we can pare the workload down to the essentials, then they’ll have more time for building relationships with both employees and clients. My managers have done a great job of this, but I hear that other people might not be as lucky.

9. What are your views about management and leadership, in general, in the company?

I’ve seen so many inspiring examples of leadership at all levels: the researcher who goes the extra mile to connect with students and industry colleagues, the consultant who shares his knowledge even without a billing code, the software developer who sees not just the widget she’s building but the reason why it matters. I like that about IBM.

Sometimes we trip. Like all companies, IBM is made up of humans. I believe most of our people want to do the best they can (or at least that’s true of everyone I’ve come across!). Sometimes it’s hard to do so under fear, uncertainty, doubt, or stress, but in general, they do. Sometimes short-term stresses make people forget to put in that extra effort to communicate their vision. It happens. As more people learn how to work with the structure and how to reshape it to make it better, I think IBM will do even better.

10. What did you like most about your job?

I loved working directly with clients, building systems that helped them save time and make a bigger difference. I also liked working with open source software and sharing as much as I could about what we were learning from these different projects.

11. What did you dislike about your job? What would you change about your job?

It’s a pity that I can’t easily experiment with entrepreneurship part-time, but I understand the reasons why the Business Conduct Guidelines avoid potential conflicts of interest. So I wouldn’t change that, although it would be interesting to find a structure that works. Maybe coming back in as a contractor for a few things? We’ll see!

12. Do you feel you had the resources and support necessary to accomplish your job? If not, what was missing?

Yup!

13. We try to be an employee-oriented company in which employees experience positive morale and motivation. What is your experience of employee morale and motivation in the company?

I think I’ve been the luckiest and the happiest IBMer I know, possibly even the happiest in the history of the company. Part of that comes from all the wonderful ways people reached out to me and helped me. Part of that comes from the things we get to work on and the difference we get to make. And yes, part of that comes from a conscious decision to remember that IBMers are human, so even if things get messed up or if things aren’t as well-communicated as they could be, I can still translate that into what people probably meant. (Handy skill. Everyone should learn it!)

14. Were your job responsibilities characterized correctly during the interview process and orientation?

Yes! Actually, since Robert Terpstra helped customize my first consulting position to fit my passions and interests, I think the interview job description was along the lines of “Be Sacha.” I’ve grown into even more capabilities, thanks to IBM.

15. Did you have clear goals and know what was expected of you in your job?

Absolutely.

16. Did you receive adequate feedback about your performance day-to-day and in the performance development planning process?

Yes! Both my managers can tell you that I talked to them about performance regularly, and planned my growth with a lot of help from them.

17. Did you clearly understand and feel a part of the accomplishment of the company mission and goals?

Totally. That’s because in addition to my GBS consulting work, I was connected with all these other groups and business units through my extracurricular interests. I felt part of Research’s explorations of social software and collaboration, part of SWG’s development of tools and business cases, part of CHQ’s campaigns and collaboration discussions, part of S&D’s strategy workshops. It was awesome.

18. Describe your experience of the company’s commitment to quality and customer service.

I’ve had the pleasure of working with people who helped delight clients. Sometimes we let internal considerations get in the way of really doing what’s best for our clients, but that’s part of the growing pains of any organization.

19. Did the management of the company care about and help you accomplish your personal and professional development and career goals?

Totally! I wish everyone had the kind of guidance and mentorship I enjoyed.

20. What would you recommend to help us create a better workplace?

I care about helping people share knowledge and collaborate more effectively. I’m looking forward to seeing how people take that further. I heard that our new CEO encouraged people to use Lotus Connections to share ideas on IBM’s strategies – exciting!

Out of self-interest, I’d love to see a more permeable interface, too. Make it easier for people to move in and out of IBM depending on what fits their life, or scale their work up and down as they want. Treat contractors and part-timers better. I hear sometimes it’s good, sometimes it’s a hassle, but I think we could be more consistently awesome for people to work with.

21. Do the policies and procedures of the company help to create a well-managed, consistent, and fair workplace in which expectations are clearly defined?

Yes, at least in my experience.

22. Describe the qualities and characteristics of the person who is most likely to succeed in this company.

In addition to all the usual stuff, like being passionate about client success, I’d suggest: Curiosity, compassion, deliberate optimism, and the ability to negotiate the system. That’s an interesting idea there, negotiating the system. Part of it means being able to navigate the system, but part of it also means tweaking the system.

23. What are the key qualities and skills we should seek in your replacement?

Many management books say that you should hire for passion and train for skills. Do that, and I’m sure you’ll find people who will be even better for IBM. I’d love to hear stories about their new adventures!

24. Do you have any recommendations regarding our compensation, benefits and other reward and recognition efforts?

Get better at showing more people how they’re part of the vision – or helping them make their own vision. Treat them better. It doesn’t have to involve money. Real appreciation, transparency, respect – that takes people far.

25. What would make you consider working for this company again in the future? Would you recommend the company as a good place to work to your friends and family?

I’ve loved working at IBM. I’d happily recommend it to other people for whom it would be a great fit. I’d be delighted to come back to IBM if it turns out that I want the scale and power of IBM to make the kind of difference I want to help make.

26. Can you offer any other comments that will enable us to understand why you are leaving, how we can improve, and what we can do to become a better company?

If I could be in two places at the same time, I’d continue working with IBM while experimenting with these ideas. But I want to do the right thing by IBM and our clients, and the right thing is to leave in order to do this experiment instead of trying to do it under the radar or letting it distract me from being fully committed. I think this will turn out wonderfully.

Getting ready for my next experiment!

Posted: - Modified: | career, experiment, ibm, sketches

image

It’s been four years of awesomeness at IBM. I’ve:

  • helped companies and communities collaborate
  • facilitated brainstorming workshops with executives from leading companies
  • built web apps in Drupal and Ruby on Rails
  • created popular tools for community newsletters and analyses
  • drawn comics that made people smile across IBM, and
  • learned from and shared with people around the world.

It totally rocked. Thank you!

Mid-February 2012, I’ll be on to my next experiment. I want to help people save time and make better decisions. Let’s see how we can make that a sustainable business!

I’m looking forward to learning more about business, and sharing the adventure with you. =)

Stay in touch!

Stay tuned!

Geek tidbits: Postfix configuration for development and testing

| development, geek, ibm, rails, work

From November:

We got the mail information for our Rails site, so I reconfigured the mail server. We’re doing a lot of development, and testing mail is much easier when you can send example mail addresses to one bucket of mail. Here’s how I set up the server to redirect everything addressed to @example.org to a test mail address.

First, I set the mail server up for local delivery only, and I confirmed that I could send mail from a local user to another local user account. Then I experimented with rewriting, using virtual_alias_maps to rewrite addresses to a specific account. I confirmed that worked. Then I checked the database to make sure we didn’t have live e-mail addresses, reconfigured the mail server to deliver Internet mail, and crossed my fingers. A few quick tests showed that mail was being delivered as planned – example.org mail routed to our temporary address, everything else delivered normally. We’ll see how this works!

Here’s our /etc/postfix/main.cf

smtpd_banner = $myhostname ESMTP $mail_name
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = domain.goes.here
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = domains.go.here, example.org
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
default_transport = smtp
relay_transport = smtp
virtual_alias_maps = hash:/etc/postfix/virtual
inet_protocols = ipv4

And /etc/postfix/virtual:

@example.org change_to_real_email@example.com

Don’t forget to run postmap /etc/postfix/virtual; /etc/init.d/postfix reload after changing /etc/postfix/virtual and your configuration.