Category Archives: ibm

The flow of opportunities in a large company

Henry Will asked me how I got to work on such interesting projects. What worked particularly well: blogs? presentations? networking?

Working in a big company is a bit different from marketing yourself outside. In a big company, it’s easier to establish and maintain large networks of people, and the organizational structure also helps pass messages up and down. When you hook in through a number of connectors (for example, my manager), figure out the tools for finding opportunities on your own, or build a reputation, opportunities can flow easily. Outside a large company, word of mouth is still powerful, but it can be difficult to build those relationships over distance and with an large number of competitors.

I do a lot of work related to Web 2.0, social media, Gen Y, PHP, Rails, and AJAX. For consulting and strategy work related to Web 2.0, social media, or Gen Y, I find that most of the leads come in through the presentations I’ve given, or from people I’ve worked with in the past. Short presentations with catchy titles or designs can go a long way. I haven’t been proactively investing in presentations. I tend to create them on request. Presentations take a lot of time for me to prepare, so I try to maximize their ROI. In fact, I get a lot more value from the blog posts that I write before a presentation (full speaker notes, ideas, etc.) and after a presentation (questions, lessons learned).

Many of my PHP/Drupal, Ruby/Rails, and AJAX work comes in through my manager, who knows about my different skills and interests. Sometimes I search our professional marketplace for upcoming opportunities requiring those skills so that I’l always have projects in the pipeline. I actually like this work more than consulting (which can be fuzzy and hard to define), so my manager and I try to pick development projects that will keep me busy and happy while still being flexible enough to accept consulting work.

If you work in a company, it really helps if your manager knows what you’re good at and what you’re interested in. He or she may be plugged into streams of opportunities, and help the right ones flow to you. It also helps to invest time into sharing what you know and helping other people out. That way, people know what you’re good at, and they can keep an eye out for things that fit too. You might get to the point of having too many opportunities, which is a great problem to have. If so, build relationships and help others by sharing those opportunities. Good luck and have fun!

Condensing requirements into use cases

(From April 23:)

I’m helping out with a proposal at work. The team asked me to condense a 250+-page requirements document into a spreadsheet of use cases. I’m new to architecture, but I gave it my best shot, sending the architect quick drafts so that we could zero in on something useful.

My first draft was too low-level, too detailed. My second draft was a bit better, but still too granular. My third draft was at about the right level, but some use cases were still too big. My fourth draft was workable. Hooray!

When you’re learning something that’s hard to pick up on your own, figure out how you can iteratively improve with feedback. Even if an expert doesn’t have the time to walk you through the process, he or she might be able to quickly tell you if you’re on the right track. See if you can break your work down into small portions you can work on until you get them right, and apply what you learn there to the rest of the work. Good luck!

Remote training that rocks

Some IBMers convinced me to share presentation tips with Lotus instructors. Here’s what I’m thinking about:

You know what’s really difficult in training? Staying interesting – and /interested/ – session after session after session. I used to teach university, and I’ve also given lots of presentations as an IBMer. It can be tough to be energetic and engaged when giving a presentation that you’ve given many times before. Even if you’re giving a new presentation, if it’s your umpteenth lunch-and-learn this year, you might feel tired just thinking about it.

I want to share some tips that help me when I’m giving presentations, and I want to hear from you what works for you and what you want to do even better.

First (and probably the most important for people who give presentations a lot): If you’re bored by your own presentations – and admit it, this can happen – it’s very hard to avoid boring others. How can you stay interested?

Let’s take the worst-case scenario: Your job is to present XYZ every week. Same presentation. Same slides. You could do it in your sleep.

Instead of just going through the presentation, look for small ways you can improve each time. Experiment with your timing. Try different examples. Ask questions. Try different questions. See if standing up makes a difference in your voice. Experiment with the capabilities of your web conference. This is a great time to experiment, actually – when you’ve practically memorized the material and can recover confidently from anything Murphy’s Law throws at you.

Would that help you stay interested? Yes. And other people will be interested because you’re interested. And you’ll be a better presenter at the end, too.

So that’s a good start. Let’s say your work is better than that. Let’s say you can improve your training as you learn – make new slides, add more resources, and so on.

Save time and create more value. Record your presentation. Share your slides and your speaker notes. Now you can give yourself a better challenge: How can you improve your training so that it’s really worth attending? What extra value will people get from you that they can’t get from recordings, slides, or speaker notes?

It’s a good idea to build plenty of room for interaction into your presentations. That’s because people can get everything else from the extra resources, but this is where they can really ask and learn. It’s also a great way for you to learn from people: what’s important to them, what else they want to learn, how to make your training better. Teach less, listen more.

Attend other people’s training sessions. See what you like – and what drives you crazy. Take notes.

It’s also a good idea to work on the next actions for your presentation. You should have a clear idea of what you want people to do after your presentation. What changes do you want them to make to the way they work? What resources do you want them to check out or bookmark? As you learn more by teaching people, build up those resources and refine those next steps. This is one of the areas where you can make a real difference as a trainer – you can help people get ready for and commit to change.

You can do lots of things to make your next steps even better. Can you make a checklist that people can save and follow? Can you share recordings and other resources? Can you tell people about other training they’ll find useful? For example, after this presentation, I want you to pick one small, specific way you can improve your next training session, and practise using it until you get the hang of it.

Let’s talk about some of those specifics. Here are three quick presentation tips that might help you make even better use of your web conference (and if you’re not using a web conference for remote training yet, switch to one!).

First: You can use the text chat for Q&A throughout your talk. Why? It’s important to see when people have questions. It’s hard for most people to interrupt speakers on the phone. You can pause for questions, but you’re probably not going to pause for questions often enough, and it breaks the momentum. Some people might use the hand-raising feature in web or phone conferences, which is good, but it’s even better to ask people to type their question into the text chat if possible. Why? You can prioritize questions, you can adjust your presentation on the fly, and you might even find that people are answering each other’s questions. If you find the text chat distracting, have a moderator or buddy keep an eye out for questions, or take a look at it every so often.

Second: Make your summary your Q&A slide. I can’t tell you how many presentations I’ve seen that end on “Thank you!”, “Q&A”, or some other mostly-blank slide. This is probably the slide that will be shown the longest – make it count! Show a one-slide summary that helps people remember what they want to ask questions about and reiterates the next steps you want them to take. Don’t let your session trail off into Q&A, either. 5-10 minutes before the end of your session, summarize the key points and review the next actions so that people can remember them.

Third: Consider adding video. Webcams are inexpensive and you can make your presentation more engaging. If you do use video, make sure your background isn’t distracting, and warn other people who might walk in!

So that’s what I’ve got to share, and I hope you’ve found one or two ideas you can use to improve your presentations. Let’s talk about it! What’s working well for you right now? What do you want to improve?

2011-04-27 Wed 17:56

On developing a reputation for project work

Over lunch, Archie and I talked about one of his business goals for this year. He wanted to work on his personal brand.

I asked him what he meant by his personal brand. “What would success look like?” I asked.

Archie said that he’d like to be known more for troubleshooting, and that he would consider himself successful if more project managers asked him to troubleshoot their projects – both technical and non-technical issues. He’s been working at the company for 12 years, and he had plenty of war stories and lessons learned to share with me. He told me that his peers know about his skills, but he wanted to hear about more projects, expand the kinds of roles he took on projects, and go into projects with more authority and leverage.

Now that was a much more useful vision than “improve personal brand.” We could work with that. It might not even have anything to do with wikis, blogs, or Twitter.

So: How can one build a reputation for project work?

We figured that the best ways to reach the people Archie was interested in would be through managers and resource deployment managers. There are a couple of ways to do that: e-mail and presentations.

In terms of e-mail, one of the best things Archie can do is to make sure that the results that he’s getting turn up in the right people’s e-mail inboxes. As it can sometimes be difficult to get recognition or documentation of results from busy project managers, I suggested that Archie write up the problems he solves, the results, and tips for avoiding such problems in the future. If he sends this e-mail to the project manager and to our manager, they can forward it to other people as needed – if they hear of a project that has a similar problem, if someone asks them who can help with a troubled project, and so on. It’s important to keep one’s manager up to date on the kinds of things one is good at or interested in, because managers talk to other managers and can refer you to opportunities.

In terms of presentations, Archie can summarize key tips from his experiences into a short presentation – maybe a top 10 list, or focused on a topic such as performance. This gives him plenty of opportunities to use and reuse the material. Speaking at a lunch-and-learn is one way to do it, and he’ll get extra exposure from the invitations going around. Speaking at one of our internal education events will let him reach even more people. The presentation can be shared internally, included with newsletters, forwarded to other people.

What else would you recommend?

2011-04-08 Fri 20:40

The Busy Person’s Guide to Learning from the Network (a guide for IBMers)

I promised to put together a talk on learning for an IBM virtual conference for new hires. Here’s a rough draft, just to get it out of my head and into a form I can work with. I’ll add URLs internally. The next steps I want people to take are:

  • Find a mentor, or even several mentors.
  • Bookmark Lotus Connections so that they can easily search it in the future.
  • Learn to find people based on documents and other shared information.

One of my mentors told me that at IBM, it’s okay if you don’t know something. If you don’t ask for help and things get messed up, though, that’s when you get into trouble. So I want to share with you some tips I’ve picked up on how to learn as quickly as you can, from as many people as you can.

I’ve been with IBM for almost four years. I know what it’s like to feel overwhelmed by all the different things there are to learn: working with Lotus Notes and other applications, dealing with technologies, working with team members and clients… It can be really intimidating. Fortunately, at IBM, there are plenty of people who can help – but sometimes you need to step up and ask.

  • Mentors

    If you don’t have a mentor yet, find one. Even better, find several mentors. Mentors can help you figure things out: the specific technology you’re learning, the tools you need to work with, the processes in your team or business unit, even your career plans.

    How can you find a mentor? Share your questions with your manager and ask your manager to refer you to some people who might be good mentors for you. Look for people on Bluepages or Lotus Connections. Take advantage of the speed mentoring events that IBM Learning sometimes organizes and see if you can connect with anyone. Attend presentations and connect with speakers or other participants. Once you have a mentor, ask him or her for introductions to other people who might be able to help.

    Maybe you’re feeling shy. Maybe you think, “Well, I’m new to IBM. Why would anyone mentor me?” I found it hard to ask people to mentor me, too, but I was amazed by how generous people were when it came to helping new people. Many mentors help others because other people mentored them. Others mentor people because they learn a lot in the process. Mentors have lots of reasons for helping, so don’t be afraid to ask.

    Social networking tip: Look for mentors and role models who blog or post updates in Lotus Connections or on the Internet. That way, you can easily learn from people in between your meetings. You can even learn from people around the world, and people whom you might be too shy to reach to right now. For example, if you’re curious about what IBM Fellows do (they have the highest technical rank in IBM), or what vice presidents are like, or so on, you can learn from their blogs, tweets, and other posts. Maybe you’ll find something you can comment on or ask about!

    How to work with mentors: Talk to your mentors about your goals and figure out how they can help you. Take the lead in setting up meetings and asking questions. Show your appreciation through thank-you notes – and even better, show your appreciation through the results that come from taking your mentors’ advice.

    Okay. You’ve got mentors. But you can’t go to your mentors for every little thing you need to learn, so you still need to figure out things on your own.

  • Documentation, assets, and other sources of information

    You’re probably already used to searching the Internet for information when you’re trying to learn something new. It can be harder to find just the right document within IBM. If you’re new to a topic, it can be difficult to find beginner-level resources, or even to know what and where to search.

    If you’re stuck, ask your coworkers or your manager for help in getting started. Take notes! Make a list of the resources you find useful as a beginner, and you’ll be able to share that list with other people who join the project. It’s a quick way to create value – and people are more likely to invest time into helping you if they know that your notes will help them and other people save time in the future.

    Don’t stop with the documents you find, too. One of the best things you can learn from a document or an asset is where you can go to find more information. Are there related communities? Can you look up other things the author has written? When you come across a useful document, look for any author information or lists of related experts. If you need help finding the right resources or you have a question that’s not answered by the document, you might be able to ask those people for help. (Look for communities or forums first, though – this helps avoid e-mail overload, and you can ask more people for help. We’ll talk more about communities later.)

    Okay. Formal documentation is great, but there’s often very little of it, especially for new tools and technologies. What do you do when you need to learn about something that doesn’t have a lot of articles or manuals yet?

  • Files, bookmarks, wikis, and blog posts

    When I need to find out about something new, informal, or obscure, I often check people’s files, bookmarks, wikis, or blog posts. This is where Lotus Connections really shines. You can search people’s public files and presentations for new information, search bookmarks for information other people have found useful, check out wikis to see what people have collaborated on, and read blog posts for people’s notes and articles.

    What if you still can’t find what you need, and the people you ask don’t know of any resources, either? This is where you might need to ask more people.

  • More questions and answers

    Have a short question? Try posting it on IBM Answers. You’ll get an e-mail notification if anyone replies. While you’re there, see if you can answer any of the pending questions.

    Tip: Don’t just post your question on IBM Answers and walk away. Reach out to specific people to see if they can share anything. If you use Profile status updates, post your question with a link to the answer page.

    Regarding experts: If you have a question that needs deep expertise, you might want to give Expertise Locator a try. You don’t want to waste experts’ time, though, so if your request is non-urgent, it’s probably better to start at a lower level. People can escalate your request if needed.

    Sometimes it helps to ask many people instead of focusing on just a few. This is where Lotus Connections Communities and IBM forums come in.

  • Lotus Connections Communities

    Whatever you’re looking for, there’s probably a community or forum related to it. Search Lotus Connections Communities to find groups related to the topic. IBM Forums has older groups, too.

    Many communities have discussion forums. You’ll need to join the community in order to ask a question. Look at other posts to see how people ask for help. Provide as much information as you can in your message, but don’t post any confidential information. Show that you’ve “done your homework” – describe how you’ve tried to solve the problem or where you’ve looked for information. That way, people might be more encouraged to help you.

    Important: Ask the community owners (see the Members tab) Some communities use the “Mail community” feature to handle questions, before mailing the community. Many communities have thousands of members, and too much community e-mail can make the community useless.

  • Building your network

    What about all those questions that people haven’t answered before, and for which there are no active communities? This is where your personal network becomes important. When you’re faced with questions that need much broader or deeper experience than you have, or you have no idea where to even start learning, your network is essential.

    If you can’t think of anyone who would know the answers you need, try thinking of people who might know people who would know the answer. Ask them for referrals. You can also look for people in Lotus Connections Profiles or Bluepages and try reaching out to them.

    Social networking tip: Lotus Connections Profiles is a great way to ask questions and get quick responses from whoever’s available in your network at the time. You need to build your network before you can use this effectively, though. Look at the main Profiles page to see who’s been participating, and invite them to your network. If they agree, you’ll be able to see their updates in your timeline, and they can see yours. That means that if you post questions in Lotus Connections, people might see it and answer it.

    Why would people spend time checking out Lotus Connections and possibly answering questions? For many people, it’s like a quick break by the virtual office watercooler, a way to catch up with lots of people and to help out people if they can. Try it – spend a little time each day or each week building your relationships by reading people’s profile updates, answering other people’s questions, sharing useful resources, and posting notes of thanks or encouragement.

  • Wrapping up

    You’ll need to learn a lot at IBM, and you’ll need to learn it quickly. Not everything will be written down, and you might not find everything you need using w3 or an Internet search engine. You’ll need to learn from the network.

    • Learn from managers, coworkers, mentors, and role models about things you might not even know to ask about
    • Follow the clues from people’s files and assets to find related communities and experts.
    • Search people’s files, bookmarks, blog posts, and profile updates to see the latest.
    • Check out Q&A sites for additional resources.
    • Reach out to communities and forums if you need help from more people.
    • Gradually build your network so that you can easily ask for people’s help when you have new questions.

    Good luck!

    2011-04-02 Sat 21:42

Learning more about Websphere and web service development

So I finally figured out what was wrong with the way I was trying to generate my web services for Websphere 6.1. I’d been using “Generate Java bean skeleton” from the WSDL file, which worked fine for the 6.0 target, but which didn’t work for 6.1. The correct way to do it is to right-click on the service and choose “Generate – Top-down Service”.

I also spent some time figuring out how to correctly use the XSD the IT architect sent me in order to use it for the data types in the WSDL. This is how:

<xsd:import schemaLocation="....xsd" namespace="...">
</xsd:import>

One of the pieces that was missing for me was dealing with namespaces, but once I got my head around XML again, I added some namespaces and got the referred types working.

So I’ve retwiddled our web services and gotten them to work with the new data structures. My test cases pass again. Progress!

2011-03-21 Mon 20:03